1 importjava.beans.PropertyVetoException;2 importjava.sql.Connection;3 importjavax.sql.DataSource;4 importcom.mchange.v2.c3p0.ComboPooledDataSource;5
6 importutils.GlobalConstant;7
8 public classDataSourceUtils {9 private staticDataSource ds;10
11 static{12 /*
13 * 从配置文件读取配置信息 <?xml version="1.0" encoding="UTF-8"?> 30000 30 3 30 10 3 50 323 * com.mysql.jdbc.Driver24 * 25 * root 789123 29 *30 * ds = // 默认的读取c3p0-config.xml中默认配置 new ComboPooledDataSource();31 */
32 ComboPooledDataSource cpds = null;33 try{34 cpds = newComboPooledDataSource();35 cpds.setCheckoutTimeout(30000);36 cpds.setIdleConnectionTestPeriod(30);37 cpds.setInitialPoolSize(3);38 cpds.setMaxIdleTime(30);39 cpds.setMaxPoolSize(70);40 cpds.setMaxStatementsPerConnection(100);41 cpds.setMinPoolSize(3);42 cpds.setMaxStatements(75);43 cpds.setAcquireIncrement(3);44 cpds.setDriverClass(GlobalConstant.CONNECTION_DRIVER);45 cpds.setJdbcUrl(GlobalConstant.CONNECTION_URL);46 cpds.setUser(GlobalConstant.CONNECTION_USER);47 cpds.setPassword(GlobalConstant.CONNECTION_PASSWORD);48 ds =cpds;49 } catch(PropertyVetoException e) {50 System.out.println("与MySQL数据库连接失败!");51 }52 }53
54 privateDataSourceUtils() {55
56 }57
58 public staticDataSource getDatasSource() {59 returnds;60 }61
62 public staticConnection getConnection() {63 Connection con = null;64 try{65 con = ds.getConnection();//每一次从ds中获取一个新的连接
66 } catch(Exception e) {67 e.printStackTrace();68 }69 returncon;70 }71 }