首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为hibernate和@Transactional配置spring数据源

为hibernate和@Transactional配置spring数据源
EN

Stack Overflow用户
提问于 2010-11-16 08:05:31
回答 2查看 8.6K关注 0票数 3

目前,我正在使用带有@ transactions注解的DriverManagerDataSource来管理事务。但是所有的事务都是非常非常慢的,可能是因为每次都会打开和关闭与数据库的连接。

我应该使用什么数据源来加速事务处理?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-16 15:01:12

DriverManagerDataSource实际上不是一个连接池,应该只用于测试。您应该尝试使用Apache Commons DBCP中的BasicDataSource。类似于:

代码语言:javascript
运行
复制
<bean id="dataSource" destroy-method="close" 
    class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="${jdbc.driverClassName}"/>
    <property name="url" value="${jdbc.url}"/>
    <property name="username" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
</bean>
票数 4
EN

Stack Overflow用户

发布于 2010-11-16 18:23:56

我在我的应用程序中使用了两种方法的组合。第一个是c3p0连接池,它几乎与chkal推荐的解决方案相同。第二种方法是使用Spring lazyConnectionDataSourceProxy,它创建延迟加载代理,仅当您访问数据库时才加载连接。这是非常有用的,当你有二级缓存,你只读取缓存的数据和查询-数据库不会被击中,你不需要获取连接(这是相当昂贵的)。

代码语言:javascript
运行
复制
<bean name="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
    <property name="driverClass" value="${jdbc.driverClassName}" />
    <property name="jdbcUrl" value="${jdbc.url}" />
    <property name="user" value="${jdbc.username}" />
    <property name="password" value="${jdbc.password}" />
    <!-- Pool properties -->
    <property name="minPoolSize" value="5" />
    <property name="initialPoolSize" value="10" />
    <property name="maxPoolSize" value="50" />
    <property name="maxStatements" value="50" />
    <property name="idleConnectionTestPeriod" value="120" />
    <property name="maxIdleTime" value="1200" />

</bean>

<bean name="lazyConnectionDataSourceProxy" class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
    <property name="targetDataSource" ref="dataSource" />
</bean>
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4190062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档