tomcat4.1.24+Mysql连接池配法

王朝java/jsp·作者佚名  2006-01-08
宽屏版  字体: |||超大  

1.修改CATALINA_HOME\conf\server.xml

<!-- Tomcat Root Context -->

<Context path="" docBase="ROOT" debug="0">

<Logger className="org.apache.catalina.logger.FileLogger"

prefix="localhost_DBTest_log." suffix=".txt"

timestamp="true"/>

<Resource name="jdbc/MysqlDB"

auth="Container"

type="javax.sql.DataSource"/>

<ResourceParams name="jdbc/MysqlDB">

<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>

</parameter>

<!-- Maximum number of dB connections in pool. Make sure you

configure your mysqld max_connections large enough to handle

all of your db connections. Set to 0 for no limit.

-->

<parameter>

<name>maxActive</name>

<value>100</value>

</parameter>

<!-- Maximum number of idle dB connections to retain in pool.

Set to 0 for no limit.

-->

<parameter>

<name>maxIdle</name>

<value>30</value>

</parameter>

<!-- Maximum time to wait for a dB connection to become available

in ms, in this example 10 seconds. An Exception is thrown if

this timeout is exceeded. Set to -1 to wait indefinitely.

-->

<parameter>

<name>maxWait</name>

<value>10000</value>

</parameter>

<!-- MySQL dB username and password for dB connections -->

<parameter>

<name>username</name>

<value>sa</value>

</parameter>

<parameter>

<name>password</name>

<value>111111</value>

</parameter>

<!-- Class name for mm.mysql JDBC driver -->

<parameter>

<name>driverClassName</name>

<value>org.gjt.mm.mysql.Driver</value>

</parameter>

<!-- The JDBC connection url for connecting to your MySQL dB.

The autoReconnect=true argument to the url makes sure that the

mm.mysql JDBC Driver will automatically reconnect if mysqld closed the

connection. mysqld by default closes idle connections after 8 hours.

-->

<parameter>

<name>url</name>

<value>jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEnco ding=GBK</value> <!--Here must use &amp; not use & -->

</parameter>

</ResourceParams>

</Context>

2.修改webapps/ROOT/INF-WEB/web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app PUBLIC

"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

<description>MySQL Test App</description>

<resource-ref>

<description>DB Connection</description>

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

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

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

</resource-ref>

</web-app>

3.测试用的testdb.jsp内容:

<%@ page contentType="text/html;charset=GBK"%>

<%@ page import= "java.sql.* " %>

<%@ page import= "javax.naming.* "%>

<%

try{

Context initCtx = new InitialContext();

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

//获取连接池对象

Object obj = (Object) ctx.lookup("jdbc/MysqlDB");

//类型转换

javax.sql.DataSource ds = (javax.sql.DataSource)obj;

Connection conn = ds.getConnection();

Statement stmt = conn.createStatement();

String strSql = " insert into test(id,name) values('007','hello,中国!') ";

stmt.executeUpdate(strSql);

strSql = " select id,name from test ";

ResultSet rs = stmt.executeQuery(strSql);

while(rs.next()){

out.println(rs.getString(1));

out.println(rs.getString(2)+"<BR>");

}

conn.close();

}catch(Exception ex){

ex.printStackTrace();

throw new SQLException("cannot get Connection pool.");

}

%>

<hr>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有