spring配置文件
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="${jdbc.driverClassName}" /> <property name="jdbcUrl" value="${jdbc.url}" /> <property name="user" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <!--初始化时获取三个连接,取值应在minPoolSize与maxPoolSize之间。Default: 3 --> <property name="initialPoolSize" value="3" /> <!--连接池中保留的最小连接数。Default: 3 --> <property name="minPoolSize" value="3" /> <!--连接池中保留的最大连接数。Default: 15 --> <property name="maxPoolSize" value="15" /> <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 --> <property name="maxIdleTime" value="60" /> <!--每60秒检查所有连接池中的空闲连接。Default: 0 --> <property name="idleConnectionTestPeriod" value="60" /> <!--定义所有连接测试都执行的测试语句。在使用连接测试的情况下这个一显著提高测试速度。注意: 测试的表必须在初始数据源的时候就存在。Default: null--> <property name="preferredTestQuery" value="select current date from sysibm.SYSDUMMY1" /> </bean>
jdbc.properties
#db2 jdbc.driverClassName=com.ibm.db2.jcc.DB2Driver jdbc.url=jdbc:db2://localhost:50000/dbname jdbc.username=username jdbc.password=password ##mysql #jdbc.driverClassName=com.mysql.jdbc.Driver #jdbc.url=jdbc:mysql://localhost:3306/dbname #jdbc.username=root #jdbc.password=password ##oracle #jdbc.driverClassName=oracle.jdbc.driver.OracleDriver #jdbc.url=jdbc:oracle:thin:@localhost:1521:sid #jdbc.username=username #jdbc.password=password
所需jar包:
c3p0-0.9.5.2.jar
mchange-commons-java-0.2.12.jar (c3p0-0.9.2以上需要这个)
C3P0连接池配置和实现详解(转)