首次使用MySQL做伺服器,就碰上MySQL串連池的問題,這是從未聽過的內容,通過網上查詢的資料以及多次的測試,終於搞定,現整理一下文檔:
********************************************
現在假如項目目錄名為: test
MYSQL資料庫使用者名稱為:root ,資料庫密碼為:jsp
MYSQL建立一個資料庫為:jsptest
********************************************
一、首先寫一個跟開發項目名相同的xml檔案:test.xml
代碼如下:
<Context path="/test" reloadable="true" docBase="test"><br /> <Resource name="jdbc/jsptest" auth="Container" type="javax.sql.DataSource"/><br /> <ResourceParams name="jdbc/jsptest"><br /> <parameter><br /> <name>factory</name><br /> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value><br /> </parameter><br /> <parameter><br /> <name>username</name><br /> <value>root</value><br /> </parameter><br /> <parameter><br /> <name>password</name><br /> <value>jsp</value><br /> </parameter><br /> <parameter><br /> <name>driverClassName</name><br /> <value>com.mysql.jdbc.Driver</value><br /> </parameter><br /> <parameter><br /> <name>url</name><br /> <value>jdbc:mysql://localhost:3306/jsptest?autoReconnect=true</value><br /> </parameter> </p><p> <parameter><br /> <name>initialSize</name><br /> <value>20</value><br /> </parameter><br /> <parameter><br /> <name>maxActive</name><br /> <value>30</value><br /> </parameter><br /> <parameter><br /> <name>maxWait</name><br /> <value>10000</value><br /> </parameter><br /> </ResourceParams><br /></Context>
該檔案為串連池設定檔。
將該檔案放在 tomcat5/conf/Catalina/localhost 目錄下!
二、 寫一個取得資料庫連接池串連的類: DatabaseConnection.java
package test;<br />import java.sql.*;<br />import javax.naming.*;<br />import javax.sql.DataSource; </p><p>public class DatabaseConnection {<br /> public static Connection getConnection() throws SQLException,NamingException<br /> {<br /> try<br /> { </p><p> Context initCtx = new javax.naming.InitialContext();<br /> Context envCtx = (Context) initCtx.lookup("java:comp/env");<br /> DataSource ds = (DataSource)envCtx.lookup("jdbc/jsptest"); </p><p> return ds.getConnection();<br /> }<br /> catch(SQLException e)<br /> {<br /> throw e;<br /> }<br /> catch(NamingException e)<br /> {<br /> throw e;<br /> } </p><p> }<br />}<br />
寫好這個類後,項目中的任何JSP,SERVLET都可以把該包進行匯入!
直接調用次類就可以進行資料庫連接池的串連了
我個人感覺這個方法比較簡單 每個項目寫這個XML檔案就可以了!不用去配置其他檔案!
如有那些地方不妥!請大家指正!
三、參考資料
1、串連池配置:http://www.bccn.net/Article/web/jsp/jszl/200608/4232.html
2、mysql串連池:http://hi.baidu.com/i_programmer/blog/item/1205b82e5f65473e1f30898b.html
3、關於Tomcat與MySQL串連池問題的詳解:http://www.zzchn.com/edu/20080222/81953.shtml