以往要設置數據庫連接池,需要借助於第三方軟件。但現在NetBeans所帶的Tomcat 5.5.7及Sun Application Server 8均可以直接設置。下面談談如何在Tomcat 5.5.7下設置。
1. 下載數據庫的專用連接驅動,並將其復制到C:\Program Files\netbeans-4.1\enterprise1\jakarta-tomcat-5.5.7\common\lib文件夾下面。
假設所用數據庫是Sybase的Adaptive Server Anywhere,從Sybase官方站點下載JConnect-6_0,從中抽取出jconn3這個驅動,復制到上述文件夾下。
2. 啟動Tomcat,在IE輸入http://localhost:8084/admin/,以管理員身份登錄管理。用戶登錄的方法可參考第5樓。點擊Resources下的Data Sources,在右邊Data Source Actions的下拉框中選Create New Data Source,按下表示范填寫:
JNDI Name: sybase/poolDB /* 根據喜好填 */
Data Source URL: jdbc:sybase:Tds:<localhost>:<端口號>
/* 數據庫的地址,此為jconn3的形式,端口號需查詢確認,但一般都是固定的,除非自己更改 */
JDBC Driver Class: com.sybase.jdbc3.jdbc.SybDriver /* jconn3的驅動 */
User Name: dba /* 用戶名,默認為dba */
Password: *** /* 密碼,默認為sql */
Max. Active Connections: 4 /* 最大活動連接數 */
Max. Ide Connections: 2 /* 最大空閒連接數 */
Max. Wait for Connecton: 5000 /* 等待連接的最大秒數 */
Validation Query: /* 驗證字符串,可不填 */
按"Save",再按"Commit Changes",Tomcat在後台將此變化保存到server.xml文件中。"Commit Changes"是最容易忘記的,小心。
3. 以下均轉入NetBeans環境中設置。在context.xml修改的內容:
<Context path="/Matrix">
<ResourceLink global="sybase/poolDB" name="sybase/poolDB" type="javax.sql.DataSource"/>
</Context>
"/Matrix"為此Web應用的根地址,表現為http://localhost:8084/Matrix。
4. 在web.xml中加入:
<resource-ref>
<description>Sybase Database Connection Pool</description>
<res-ref-name>sybase/poolDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
5. 好了,可以使用連接池了。以下代碼為在jsp文件中使用JSTL標簽庫的范例。
<sql:query var="queryresults" dataSource="sybase/poolDB">
SELECT * FROM customer
</sql:query>