配置tomcat6创建mysql连接池
刚做完一个小项目,是用普通的JDBC方式取得与数据库的连接的,现在想用数据库连接池的方式取得与数据库的连接,提高访问的效率。于是花了一下午去弄这个连接池的实现,我用的是tomcat6.x和mysql的数据库,刚开始的时候配置总是出错,提示 Cannot create JDBC driver of class '' for connect URL '',在网上查了有关的资料,说的方法都要么不全面要么观点不一致,经过总结和实验结果,终于配置通过,下面分享一下我的配置过程,没什么复杂的东西但是清楚了可以节省很多时间在这上面。
1.首先把mysql的驱动程序拷贝到tomcat根目录下的lib目录,原来我的工程的lib目录下也考了驱动程序但是会出错提示找不到驱动,所以根目录下的lib目录还是要考一个。
2.配置tomcat根目录/conf下的server.xml文件,在<GlobalNamingResources>标签中插入如下标签:
<Resource name="jdbc/Testcp" auth="Container" type="javax.sql.DataSource"driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/bbs?autoReconnect=true"maxActive="50" maxldle="10" maxWait="5000"username="root"password="admin" />
<Context path="/Testconnpool" debug="5" reloadable="true" crossContext="true"> <ResourceLink name="jdbc/Testcp" global="jdbc/Testcp" type="javax.sql.DataSource"/> </Context>
<resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/Testcp</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%><%@ page import = "java.sql.*" %><%@ page import = "javax.naming.*"%><%@ page import = "javax.sql.*" %><%DataSource ds = null;Context initCtx = new InitialContext();ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/Testcp");Connection conn = ds.getConnection();Statement stmt = conn.createStatement();ResultSet rs = stmt.executeQuery("select * from article");while(rs.next()){out.println(rs.getString("title")+"<br>");} rs.close(); stmt.close(); conn.close();%>