Tomcat 5.5 数据库连接池配置
作者:
我用的数据库是MySQL5.5,所以首先要把MySQL的JDBC驱动程序拷贝到Tomcat安装目录的/common/lib下和你自己网站的/WEB-INF/lib下。
Server.xml的修改我推荐使用Tomcat的Admin组件完成,完全图形化配置,相当容易。或者按下面的写法在< GlobalNamingResources>< /GlobalNamingResources>之间写如下配置(仅供参考,各位用的时候,请改成自己数据库的配置):
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
password="******"
driverClassName="org.gjt.mm.mysql.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://127.0.0.1/test"
maxActive="4" />
然后,在Tomcat安装目录下/conf/Catalina/localhost文件夹中建立一个和你网站文件夹名字一样的XML文件。例如:TestSourse.xml。内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
password="******"
driverClassName="org.gjt.mm.mysql.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://127.0.0.1/test"
maxActive="4" />
</Context>
其实就是把Server.xml的内容再重复一遍。这一步非常重要,如果没有这步就会出错,会出现 org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'错误。
最后,在你自己网站的/WEB-INF/web.xml文件中,添加一下代码(参考):
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
OK。配置全部完成。现在你可以写代码测试这个数据库连接池了。如:
DataSource ds = null;
InitialContext ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql");
Connection conn = ds.getConnection();
数据库连接对象得到了。
复制代码 代码如下:
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
password="******"
driverClassName="org.gjt.mm.mysql.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://127.0.0.1/test"
maxActive="4" />
然后,在Tomcat安装目录下/conf/Catalina/localhost文件夹中建立一个和你网站文件夹名字一样的XML文件。例如:TestSourse.xml。内容如下:
复制代码 代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
name="jdbc/mysql"
type="javax.sql.DataSource"
password="******"
driverClassName="org.gjt.mm.mysql.Driver"
maxIdle="2"
maxWait="5000"
username="root"
url="jdbc:mysql://127.0.0.1/test"
maxActive="4" />
</Context>
其实就是把Server.xml的内容再重复一遍。这一步非常重要,如果没有这步就会出错,会出现 org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'错误。
最后,在你自己网站的/WEB-INF/web.xml文件中,添加一下代码(参考):
复制代码 代码如下:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/mysql</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
OK。配置全部完成。现在你可以写代码测试这个数据库连接池了。如:
复制代码 代码如下:
DataSource ds = null;
InitialContext ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/mysql");
Connection conn = ds.getConnection();
数据库连接对象得到了。