配置前先要下載 proxool-0.9.1RC2.zip,拷貝proxool-0.9.1.jar 和 proxool-cglib.jar 到web-info/lib 下載proxool 地址:http://proxool.sourceforge.net
先說下 第一種方法吧:
1. 新建 Proxool.properties 文件,可放在 WEB-INF 文件夾下 。內容如下。
jdbc-0.proxool.alias=mysql
jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/FileShare
jdbc-0.proxool.driver-class=com.mysql.jdbc.Driver
jdbc-0.user=root
jdbc-0.password=root
jdbc-0.proxool.maximum-connection-count=30
jdbc-0.proxool.minimum-connection-count=5
jdbc-0.proxool.prototype-count=3
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
2. 向 web.xml 中添加 proxool初始化設置servlet 。 即 添加如下內容:
<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>
org.logicalcobwebs.proxool.configuration.ServletConfigurator
</servlet-class>
<init-param>
<param-name>propertyFile</param-name>
<param-value>WEB-INF/Proxool.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
如果想要監控 proxool 連接池信息,可以加如下信息。 輸入http://localhost:8080/AjaxTest/admin.proxool 即可看見
<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>/admin.proxool</url-pattern>
</servlet-mapping>
3. 在 新建 test.jsp 內容如下
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
Connection conn = null;
try {
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
conn = DriverManager.getConnection("proxool.mysql");
if( conn!=null )
System.out.println("數據庫連接測試成功!");
Statement stmt = conn.createStatement();
ResultSet rst = null;
rst = stmt.executeQuery("select * from users"); // sql 查詢語句,視具體情況而定
while( rst.next() )
out.println(rst.getString(1));
}catch(SQLException e){
System.out.print( e.toString() );
// }catch(ProxoolException el) {
// System.out.print( el.toString() );
} catch(Exception ee){
System.out.print( ee.toString() );
}
finally {
try {
if(conn != null)
conn.close();
}catch(SQLException e2) {
System.out.print( e2.toString() );
}
}
%>
</body>
</html>
然後重啓 Tomcat即可。
個人覺得 Proxool.properties 方式比較好,屬性很容易看見。 如果想以 Proxool.xml 方式配置,只需
1. 在 WEB-INF 下建立 Proxool.xml 文件,內容如下:
<?xml version="1.0" encoding="UTF-8"?>
<proxool-config>
<proxool>
<alias>mysql</alias>
<driver-url>jdbc:mysql://localhost:3306/FileShare</driver-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver-properties>
<property name="user" value="root" />
<property name="password" value="root" />
</driver-properties>
<house-keeping-sleep-time>90000</house-keeping-sleep-time>
<maximum-new-connections>20</maximum-new-connections>
<prototype-count>5</prototype-count>
<maximum-connection-count>30</maximum-connection-count>
<minimum-connection-count>10</minimum-connection-count>
</proxool>
</proxool-config>
2. 修改 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>
3. jsp 頁面可以不用修改 直接用上面的 test.jsp 即可(因爲只是配置方式不同而已,效果一樣的)。