最近試用了c3p0數據庫連接池,配置方式使用的是propery文件,將c3p0.properties放在classpath目錄下,如果為WEB應用,放在WEB-INF\classes下
# # This file is detritus from various testing attempts # the values below may change, and often do not represent # reasonable values for the parameters. # c3p0.jdbcUrl=jdbc:oracle:thin:@127.0.0.1:1521:chenchi c3p0.driverClass=oracle.jdbc.driver.OracleDriver c3p0.user=hbota2 c3p0.password=ty1234 c3p0.minPoolSize=3 c3p0.maxPoolSize=20 #c3p0.testConnectionOnCheckout=true #c3p0.testConnectionOnCheckin=true #c3p0.checkoutTimeout=2000 #c3p0.idleConnectionTestPeriod=5 #c3p0.maxConnectionAge=10 #c3p0.maxIdleTime=2 #c3p0.maxIdleTimeExcessConnections=1 #c3p0.propertyCycle=1 #c3p0.numHelperThreads=10 #c3p0.unreturnedConnectionTimeout=15 #c3p0.debugUnreturnedConnectionStackTraces=true #c3p0.maxStatements=30 #c3p0.maxStatementsPerConnection=5 #c3p0.maxAdministrativeTaskTime=3 #c3p0.preferredTestQuery=SELECT 1 #c3p0.preferredTestQuery=SELECT a FROM emptyyukyuk WHERE a = 5 #c3p0.preferredTestQuery=SELECT a FROM testpbds WHERE a = 5 #c3p0.usesTraditionalReflectiveProxies=true #c3p0.automaticTestTable=PoopyTestTable #c3p0.acquireIncrement=4 #c3p0.acquireRetryDelay=1000 #c3p0.acquireRetryAttempts=60 #c3p0.connectionTesterClassName=com.mchange.v2.c3p0.test.AlwaysFailConnectionTester #c3p0.initialPoolSize=10 com.mchange.v2.log.MLog=com.mchange.v2.log.log4j.Log4jMLog #com.mchange.v2.log.MLog=com.mchange.v2.log.jdk14logging.Jdk14MLog #com.mchange.v2.log.MLog=com.mchange.v2.log.FallbackMLog com.mchange.v2.log.NameTransformer=com.mchange.v2.log.PackageNames com.mchange.v2.log.FallbackMLog.DEFAULT_CUTOFF_LEVEL=ALL #com.mchange.v2.c3p0.VMID=poop
在java代碼中直接使用即可
ComboPooledDataSource cpds = new ComboPooledDataSource();
Connection conn = cpds.getConnection();
//業務代碼
conn.close();