天天看點

tomcat5.5.9連接配接池的配置

最近做個項目,需要在tomcat,weblogic中寫連接配接池.weblogic還是老樣子,照着圖形界面配置就可以了.Tomcat我用的是5.5.9.雖說以前用tomcat4版本寫過,可早就聽說,5版本和4版本的差距很大.是以就提前做好了心裡準備,先看了一個幫助文檔,花了進一個小時的時間搞定,現在整理出來與大家分享.

其實Tomcat5要比tomcat4簡單多了,如果還是按tomcat4的套路來,呵呵,那恐怕那走很多彎路了.

第一步:在tomcat5→common→lib下加入你所連接配接資料庫的驅動包.這裡我用的mysql資料庫.

第二步:在tomcat5→conf→Catalina→localhost配置一個xml檔案.這裡一定要注意,必須和你的項目名稱是一模一樣的.我用的項目名為testTomcat.testTomcat.xml檔案配置如下:

[code] <Resource name='jdbc/mysql' auth='Container'

type='javax.sql.DataSource' driverClassName='com.mysql.jdbc.Driver'

url='jdbc:mysql://127.0.0.1:3306/addressbooksample'

username='root' password='' maxActive='20' maxIdle='10'

maxWait='-1'/>

<ResourceLink

global="UserDatabase"

name="users"

type="org.apache.catalina.UserDatabase"/>[/code]這裡就和以前的tomcat4版本不一樣了,以前要在server.xml配置.而tomcat5版本直接在這裡配置就可以了.

第三步:在你項目的web.xml配置如下:

[code] <resource-ref>

<description>mysql for 192.1.1.156 </description>

<res-ref-name> jdbc/mysql </res-ref-name>

<res-type>javax.sql.DataSource</res-type>

<res-auth>Container</res-auth>

</resource-ref>[/code]注意:這裡的res-ref-name名字必須和testTomcat.xml檔案中的一樣.其實這一步省去也是可以的.但還是建議配置一下.

第四步:建一個JSP頁面來感受一下成功的喜悅吧.頁面代碼如下

[code]Context initCtx = new InitialContext();

Context ctx = (Context) initCtx.lookup("java:comp/env");

ds =(javax.sql.DataSource) ctx.lookup("jdbc/mysql");

System.out.println("Init datasource OK @!");[/code]注意:别忘了引入相關的包哦.還要注意的是這裡不能用主函數來測試.因為你主函是得到tomcat的上下文的.

在項目中應用如下:

[code]public class TomcatJDNI {

public static String

DATASOURCE_CONFIG_FILE="test.db";

public static DataSource ds;

static{

try{

ResourceBundle rb = ResourceBundle.getBundle(DATASOURCE_CONFIG_FILE);

String dsName = rb.getString("datasource_name");

Context initCtx = new InitialContext();

Context ctx = (Context) initCtx.lookup("java:comp/env");

ds =(javax.sql.DataSource) ctx.lookup(dsName);

System.out.println("Init datasource OK @!");

}catch(Exception e){

System.out.println("can’t init datasource !");

}

}

public static Connection getConnection() throws SQLException{

return ds.getConnection();

}

}[/code]

這裡的test.db是一個db.properties檔案.檔案内容如下

datasource_name= jdbc/mysql

這樣擴充性比較好.連接配接其它的資料庫,隻需要改動此檔案,無需重新編譯.

就到這裡吧