proxool是一个开放的Java SQL Driver驱动程序,提供了对你选择的其它类型的驱动程序的连接池封装。可以非常简单的移植到现存的代码中。完全可配置。快速,成熟,健壮。可以透明地为你现存的JDBC驱动程序增加连接池功能。
1.直接在Java写
static ... {
try ...{
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
}
catch(ClassNotFoundException e) ...{
log.debug("can not find db driver"+e);
}
}
void getConnection() ... {
String dataDriver = "com.mysql.jdbc.Driver";
String dataURL = "jdbc:mysql://localhost:3306/test";
String user = "root";
String pwd = "";
try ...{
conn = DriverManager.getConnection("proxool.example:" + dataDriver + ":" + dataURL, user, pwd);
} catch (SQLException e) ...{
log.debug(e);
}
}
2.spring 配置文件里写
context.xml
< property name ="driver" >
< value > com.mysql.jdbc.Driver </ value >
</ property >
< property name ="driverUrl" >
< value > jdbc:mysql://localhost:3306/test?useUnicode=true & characterEncoding=utf8 </ value >
</ property >
< property name ="user" >
< value > root </ value >
</ property >
< property name ="password" >
< value ></ value >
</ property >
< property name ="alias" >
< value > example </ value >
</ property >
< property name ="houseKeepingSleepTime" >
< value > 90000 </ value >
</ property >
< property name ="prototypeCount" >
< value > 5 </ value >
</ property >
< property name ="maximumConnectionCount" >
< value > 100 </ value >
</ property >
< property name ="minimumConnectionCount" >
< value > 10 </ value >
</ property >
< property name ="trace" >
< value > true </ value >
</ property >
</ bean >
3.结合数据池程序监控
web.xml
< servlet-name > proxoolServletConfigurator </ servlet-name >
< servlet-class > org.logicalcobwebs.proxool.configuration.ServletConfigurator </ servlet-class >
< init-param >
< param-name > propertyFile </ param-name >
< param-value > WEB-INF/classes/proxool.properties </ param-value >
</ init-param >
< load-on-startup > 1 </ load-on-startup >
</ servlet >
< servlet >
< servlet-name > proxool </ servlet-name >
< servlet-class > org.logicalcobwebs.proxool.admin.servlet.AdminServlet </ servlet-class >
</ servlet >
< servlet-mapping >
< servlet-name > proxool </ servlet-name >
< url-pattern > /proxool </ url-pattern >
</ servlet-mapping >
proxool.properties
jdbc-0.proxool.alias=spring_proxool
jdbc-0.proxool.driver-class=com.mysql.jdbc.Driver
jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
jdbc-0.user=root
jdbc-0.password=
jdbc-0.proxool.maximum-connection-count=100
jdbc-0.proxool.prototype-count=4
jdbc-0.proxool.house-keeping-test-sql=select CURRENT_DATE
jdbc-0.proxool.verbose=true
jdbc-0.proxool.statistics=10s,1m,1d
jdbc-0.proxool.statistics-log-level=ERROR
spring里的配置
singleton ="true" >
< property name ="driverClassName" >
< value > org.logicalcobwebs.proxool.ProxoolDriver </ value >
</ property >
< property name ="url" >
< value > proxool.spring_proxool </ value >
</ property >
</ bean >
普通的java获得Connection
Connection conn = null;
try ...{
conn = DriverManager.getConnection("proxool.spring_proxool");
} catch (SQLException e) ...{
log.debug(e);
}
return conn;
}