Eclipse+TomCat+MySQL配置数据库连接池

【摘 要】此配置在Eclipse3.0.1、TomCat5.0.28、MySQL 5.0.19测试通过,总结了网上及书上所说的配置方法,也许是我版本的原因,也许是他们说的都不是很完全,我并没有配置成功,所以我特意把成功的配置方法总结下。
1、将数据库驱动程序文件mysql-connector-java-3.1.12-bin.jar放在Tomcat的common/lib中。如果驱动没配置成功会出现错误“Cannot load JDBC driver class 'com.mysql.jdbc.Driver'”;
2、在IE浏览器输入地址: http://127.0.0.1:8080/admin/,输入TomCat服务器登陆用户名和密码(在安装TomCat时所设置的)
3、   左面的DataSource->选右上角的下拉框Create New Data Source项,在表格输入以下内容(输入内容和效果图如下:)
 
属性名称
属性值
说明
JNDI Name
Jdbc/mysql
设置连接池的JNDI名,也就是数据源名,在Java程序中用
Data Source URL
jdbc:mysql://localhost/testdb
数据库连接字符串,testdb为在MySQL中建立的数据库名
JDBC Driver Class
com.mysql.jdbc.Driver
JDBC连接类,即数据库驱动
User Name
root
数据库登陆用户名
Password
Mysql(安装MySql时所设置的)
数据库登陆用户密码
Max.Active Connections
选择默认
连接池的最大数据库连接数。设为0表示无限制
Max. Idle Connections:
选择默认
最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连接将被标记为不可用,然后被释放。设为0表示无限制。
Max. Wait for Connection
选择默认
最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示                      无限制。
Validation Query
选择默认
验证用的查询语句,可不写
4、   在Eclipse建立项目,输入以下代码:
<%@ page contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*"%>
<%@ page import="java.sql.Statement"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%
Connection con=null;
Statement sm=null;
ResultSet rs=null;
try{
   InitialContext ctx=new InitialContext();
   DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/mysql");
   con = ds.getConnection();// 建立 Connection 对象
   sm = con.createStatement();// 建立 Statement 对象
   rs = sm.executeQuery("select * from user");// 建立 ResultSet 对象。数据库 testdb 的表为 user
   while(rs.next())
        out.println(rs.getString(1)+",");
}
catch(Exception e){
       out.println(e.getMessage());
}
finally {
       if (rs != null) {
              try {
                     rs.close();
              } catch (SQLException e) {}
              rs = null;
       }
       if (sm != null) {
              try {
                     sm.close();
              } catch (SQLException e) {}
              sm = null;
       }
       if (con != null) {
              try {// 这里不会关闭这个 Connection ,而是将它 Connection 放回数据库连接池。
                     con.close();
              } catch (SQLException e) {}
              con = null;
       }
}
%>
5、此时直接运行会出现“Name jdbc is not bound in this Context”的错误,因为还没配置。现在开始配置,在Tomcat 5.0安装目录,C:/Program Files/Apache Software Foundation/Tomcat 5.0/conf打开server.xml,在最末尾的</Host>项前输入以下一项
<Context workDir="C:/eclipse/workspace/TestDataPool/bin"
path="/DataPoolWeb"
docBase="C:/eclipse/workspace/TestDataPool/DataPoolWeb" reloadable="true">
 <ResourceLink name="jdbc/mysql" type="javax.sql.DataSourcer" global="jdbc/mysql"/>
</Context>
6、     停止Tomcat,重新启动Tomcat,然后运行会发现以下错误“Cannot create JDBC driver of class '' for connect URL 'null'”;
原因:在重新启动Tomcat时,会在C:/Program Files/Apache Software Foundation/Tomcat 5.0/conf/Catalina/localhost目录里产生一个与建立的Web目录同名的XML文件,我的是Web目录是DataPoolWeb,所以产生了DataPoolWeb.xml文件。
打开此文件,会发现在第5步server.xml中配置的Context节,跑到这里了,遗憾的就是没有完全跑到这里,我们手工把以下内容加到Context节里
<ResourceLink name="jdbc/mysql" type="javax.sql.DataSourcer" global="jdbc/mysql"/>
7、再次停止Tomcat,重新启动Tomcat,运行就OK了'
 
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值