读书人

Java中应用C3P0连接池

发布时间: 2013-03-21 10:08:17 作者: rapoo

Java中使用C3P0连接池
1、c3p0.properties
c3p0.driverClass=org.postgresql.Driver
c3p0.jdbcUrl=jdbc:postgresql://192.168.20.33:5432/kwtmap
c3p0.user=nwd
c3p0.password=ok123456
c3p0.minPoolSize=5
c3p0.maxPoolSize=20
c3p0.acquireIncrement=5
c3p0.initialPoolSize=5
c3p0.maxIdleTime=240
2、Java代码

package com.boonya.mongo.optimize;import java.beans.PropertyVetoException;import java.sql.Connection;import java.sql.SQLException;import com.boonya.mongo.utils.ConstantUtils;import com.mchange.v2.c3p0.ComboPooledDataSource;/** * MDBManager.java * 功能:使用C3P0连接池获取数据库连接对象 * @author boonya * @version 1.0 2013-03-07 */public class MDBManager {private static final MDBManager instance=new MDBManager();private static ComboPooledDataSource cpds=new ComboPooledDataSource(true); /** * 此处可以不配置,采用默认也行 */static{cpds.setDataSourceName("mydatasource");cpds.setJdbcUrl(ConstantUtils.getValue("c3p0.jdbcUrl").toString());try {cpds.setDriverClass(ConstantUtils.getValue("c3p0.driverClass").toString());} catch (PropertyVetoException e) {e.printStackTrace();}cpds.setUser(ConstantUtils.getValue("c3p0.user").toString());cpds.setPassword(ConstantUtils.getValue("c3p0.password").toString());cpds.setMaxPoolSize(Integer.valueOf(ConstantUtils.getValue("c3p0.maxPoolSize").toString()));cpds.setMinPoolSize(Integer.valueOf(ConstantUtils.getValue("c3p0.minPoolSize").toString()));cpds.setAcquireIncrement(Integer.valueOf(ConstantUtils.getValue("c3p0.acquireIncrement").toString()));cpds.setInitialPoolSize(Integer.valueOf(ConstantUtils.getValue("c3p0.initialPoolSize").toString()));cpds.setMaxIdleTime(Integer.valueOf(ConstantUtils.getValue("c3p0.maxIdleTime").toString()));}private MDBManager(){}public static MDBManager getInstance(){return instance;}public static Connection  getConnection(){try {return cpds.getConnection();} catch (SQLException e) {e.printStackTrace();}return null;}}

读书人网 >编程

热点推荐