1.在spring-db.xml下:
<bean id="payDataSource" class="com.alibaba.druid.pool.DruidDataSource"
init-method="init" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<!-- 基本属性 url、user、password -->
<property name="url" value="${pay.jdbc.url}" />
<property name="username" value="${pay.jdbc.username}" />
<property name="password" value="${pay.jdbc.password}" />
<!-- 配置初始化大小、最小、最大 -->
<property name="maxActive" value="${pay.jdbc.maxActive}" />
<property name="initialSize" value="${pay.jdbc.initialSize}" />
<property name="minIdle" value="${pay.jdbc.minIdle}" />
<!-- maxWait 获取连接等待超时的时间 -->
<property name="maxWait" value="60000" />
<!-- timeBetweenEvictionRunsMillis间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- minEvictableIdleTimeMillis 一个连接在池中最小空闲的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000" />
<property name="validationQuery" value="SELECT 'z'" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<property name="filters" value="stat" />
</bean>
2.在具体的服务类注入数据源的属性
<!-- 业务交易流水序列号产生服务 -->
<bean id="txnSeqNoService" class="com.cgd.pay.atom.impl.SequenceNoServiceImpl" init-method="init">
<property name="dataSource" ref="payDataSource" />

本文介绍了如何在Spring中配置DruidDataSource,并在服务类中注入数据源以获取Connection。通过设置各种属性,如连接池大小、超时时间等,确保数据源的有效管理和性能。在实际操作方法中,展示了获取并使用Connection的过程,强调了手动设置事务以防止数据不一致和死锁的问题。
最低0.47元/天 解锁文章
7253

被折叠的 条评论
为什么被折叠?



