您的位置:首页 > 运维架构 > Tomcat

Tomcat 5.5.9连接池的配置

2005-07-28 09:51 417 查看
網上查了一些資料,終於成功了。
主要資料是來自:http://www.gd-linux.org/bbs/showthread.php?t=715
下面是我照著http://www.gd-linux.org/bbs/showthread.php?t=715這位好人寫的資料配置成功的。
1、下載東西吧。
    下载commons-dbcp-1.2.1.jar和PostgreSQL的JDBC驱动程序(其它數據庫都是一樣的)
    網址分別的:  
   http://jakarta.apache.org/commons/dbcp/   http://jdbc.postgresql.org/download.html
    把上面的東西放到Tomcat5.5/common/lib下
2、编辑Tomcat 5.5/conf/tomcat-users.xml,配置如下(照著前面網上的資料來Copy)
<tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="tomcat" password="tomcat" roles="tomcat,manager,admin"/>
</tomcat-users>3、编辑Tomcat 5.5/conf/server.xml(都是網上的)在下面代碼的後面加上:  <Host name="localhost" appBase="webapps"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">加上: <Context path="" docBase=""  debug="5" reloadable="true" crossContext="true">
      <Resource name="mytest_ds" auth="Container"
type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
          url="jdbc:postgresql://127.0.0.1:5432/test_db"
          username="postgres" password="" maxActive="20" maxIdle="10" maxWait="-1"/>
    </Context>

type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
          url="jdbc:postgresql://127.0.0.1:5432/test_db"
          username="postgres" password="" maxActive="20" maxIdle="10" maxWait="-1"/>
    </Context>
mytest_ds是连接数据源名称
test_db是数据库名称
按個人的情況設置這二個參數:path="" docBase="" 
4、寫一個jsp測試吧!(和網上一樣)
<%@page contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Test of connection pool</title>
</head>
<body>
<%
out.print("Start<br/>");
try{
 InitialContext ctx = new InitialContext();
 javax.sql.DataSource connectionPool = (javax.sql.DataSource) ctx.lookup("java:comp/env/mytest_ds");
 Connection conn = connectionPool.getConnection();
 out.print("DB connection pool run OK!");
 Statement stmt = null;
 stmt=conn.createStatement();
 ResultSet rs = stmt.executeQuery("select * from testtable");
 while(rs.next()){
   out.println(rs.getString("loginname"));
 }
 conn.close();
}
catch(Exception ex){
 out.print(ex.getMessage());
 ex.printStackTrace();
}
%>
</body>
</html>

5、測試成功。這是我在網上學習的內容。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息