目前项目使用proxool.0.9.1连接池出现问题:连接不能释放,连接数总是超过最大值
proxool。xml<?xml version="1.0" encoding="UTF-8"?>
<something-else-entirely>
<proxool>
<alias>pool</alias>
<!-- 数据库url连接 -->
<driver-url>jdbc:mysql://localhost:3306/db</driver-url>
<!-- mysql驱动 org.gjt.mm.mysql.Driver-->
<driver-class>org.gjt.mm.mysql.Driver</driver-class>
<driver-properties>
<!-- userName -->
<property name="user" value="root"/>
<!-- password -->
<property name="password" value="root"/>
<property name="useUnicode" value="true"/>
<property name="characterEncoding" value="utf-8"/>
</driver-properties>
<simultaneous-build-throttle>2</simultaneous-build-throttle>
<maximum-connection-count>2</maximum-connection-count>
<minimum-connection-count>0</minimum-connection-count>
<house-keeping-sleep-time>120000</house-keeping-sleep-time>
<prototype-count>1</prototype-count>
<maximum-new-connections>10</maximum-new-connections>
<!--Test SQL(SELECT getDate()) -->
<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
</proxool>
</something-else-entirely>
web.xml...
<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>Admin</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Admin</servlet-name>
<url-pattern>/pool</url-pattern>
</servlet-mapping>
...
代码中的使用:public static Connection getCon() {
Connection conn=null;
try {
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
} catch (ClassNotFoundException ex) {
System.err.println(ex);
}
try {
conn = DriverManager.getConnection("proxool.pool");
} catch (Exception ex1) {
System.err.println(ex1);
}
return conn;
}释放使用的是
conn。close()
目前查询数据正常,但是在查询完之后使用conn.close(),在查询总是抱连接已经关闭的问题 请问proxool的连接创建和 释放连接到连接池 应该怎么写? 最好有代码
proxool。xml<?xml version="1.0" encoding="UTF-8"?>
<something-else-entirely>
<proxool>
<alias>pool</alias>
<!-- 数据库url连接 -->
<driver-url>jdbc:mysql://localhost:3306/db</driver-url>
<!-- mysql驱动 org.gjt.mm.mysql.Driver-->
<driver-class>org.gjt.mm.mysql.Driver</driver-class>
<driver-properties>
<!-- userName -->
<property name="user" value="root"/>
<!-- password -->
<property name="password" value="root"/>
<property name="useUnicode" value="true"/>
<property name="characterEncoding" value="utf-8"/>
</driver-properties>
<simultaneous-build-throttle>2</simultaneous-build-throttle>
<maximum-connection-count>2</maximum-connection-count>
<minimum-connection-count>0</minimum-connection-count>
<house-keeping-sleep-time>120000</house-keeping-sleep-time>
<prototype-count>1</prototype-count>
<maximum-new-connections>10</maximum-new-connections>
<!--Test SQL(SELECT getDate()) -->
<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
</proxool>
</something-else-entirely>
web.xml...
<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>Admin</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Admin</servlet-name>
<url-pattern>/pool</url-pattern>
</servlet-mapping>
...
代码中的使用:public static Connection getCon() {
Connection conn=null;
try {
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
} catch (ClassNotFoundException ex) {
System.err.println(ex);
}
try {
conn = DriverManager.getConnection("proxool.pool");
} catch (Exception ex1) {
System.err.println(ex1);
}
return conn;
}释放使用的是
conn。close()
目前查询数据正常,但是在查询完之后使用conn.close(),在查询总是抱连接已经关闭的问题 请问proxool的连接创建和 释放连接到连接池 应该怎么写? 最好有代码
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货