读书人

Tomcat 5.0 数据库连接池的配备

发布时间: 2012-10-29 10:03:53 作者: rapoo

Tomcat 5.0 数据库连接池的配置
忙了半天,终于配置好了.不过5.0版本和5.5的配置有一定区别的.这里是5.0的.如果读者要5.5的配置的话,其实差不多的.可以网上去搜,呵呵
这里数据库是mysql.
1.确保mysql的jdbc驱动包,拷贝到Tomcat_Home\common\lib .比如我的是C:\Program Files\Apache Software Foundation\Tomcat 5.0\common\lib
2,打开server.xml文件,在</host>前把以下代码粘贴上


<Context path="/web工程的名字" docBase="web工程的目录\WebRoot"
debug="5" reloadable="true" crossContext="true">

<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_MysqlTest_log." suffix=".txt"
timestamp="true"/>

<Resource name="自命名的数据源的名字" auth="Container" type="javax.sql.DataSource"/>

<ResourceParams name="自命名的数据源的名字">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>30</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>username</name>
<value>用户名</value>
</parameter>
<parameter>
<name>password</name>
<value>密码</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost:3306/数据库的名字?autoReconnect=true</value>
</parameter>
</ResourceParams>
</Context>
这样就可以了,呵呵.就这么简单.
试试行不行,写个测试程序如下,
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%!
final String JNDINAME = "java:comp/env/jdbc/mldn" ;
%>
<%
Connection conn = null ;
try
{
// 初始化查找命名空间
Context ctx = new InitialContext() ;
// 找到DataSource
DataSource ds = (DataSource)ctx.lookup(JNDINAME) ;
conn = ds.getConnection() ;
}
catch(Exception e)
{
System.out.println(e) ;
}
%>
<%=conn%>
<%
// 将连接重新放回到池中
conn.close() ;
%>


打开tomcat,运行即可

[size=18][/size]debug="5" reloadable="true" crossContext="true">
这样,就成了默认站点.
但是另外一个问题出现了.
我ajax调用的servlet找不到数据源.
Name jdbc is not bound in this Context
.但是其他的程序执行正常.
能指点下为什么吗? 2 楼 waxd 2007-08-15 按你说的方法,把工程建好后但独启动tomcat测试可以,可是怎么在jubilder中启动tomcat就会出现下面的错误提示啊

javax.naming.NameNotFoundException: Name jdbc is not bound in this Context

读书人网 >其他数据库

热点推荐