关闭

tomcat4.1.24+Mysql连接池配法

标签: 中间件
396人阅读 评论(0) 收藏 举报
分类:

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> 


4.最后浏览 
http://localhost/testdb.jsp

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:263336次
    • 积分:3583
    • 等级:
    • 排名:第9510名
    • 原创:44篇
    • 转载:345篇
    • 译文:2篇
    • 评论:16条
    最新评论