在tomcat4.0中配置连接池
作者:huivip(孙来会)
配置步骤:
(1) 在tomcat4.0中没有dbcp的包,要从高版本的tomcat中拷贝(如5.0),拷贝如下文件:commons-dbcp-1.1.jar,commons-pool-1.1.jar,commons-collections.jar,commons-el.jar 到 “TOMCATDIR”/common/lib下
(2) 修改 service.xml 文件:在host 元素下加上以下内容
其中path表示你的webapps下的应用目录,jdbc/testpool 是JNDI注册名称
蓝色部分根据自己的情况进行调整
<Context path="/test" docBase="test" debug="0" reloadable="true">
<Resource name="jdbc/testpool" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/testpool">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.gjt.mm.mysql.Driver</value> <!----mysql驱动-->
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost:3306/dmim</value> <!---数据库URL-->
</parameter>
<parameter>
<name>username</name>
<value>dmimuser</value>
</parameter>
<parameter>
<name>password</name>
<value>sldmim0303</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>10</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>
(3) 测试jsp文件
<%@ page contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*,javax.naming.*"%>
<%
try {
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:comp/env");
Object obj = (Object) ctx.lookup("jdbc/testpool");
javax.sql.DataSource ds = (javax.sql.DataSource)obj;
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
java.sql.ResultSet.CONCUR_READ_ONLY);
String strSQL = "SELECT * FROM consumer";
ResultSet rs = stmt.executeQuery(strSQL);
while(rs.next()){
out.println(rs.getString(2));
}
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
throw e;
}
%>