这里我就讲一下我在配置MySQL连接池碰到的一点问题吧
最明显的变化就是tomcat5和tomcat6的目录结构有了变化,在tomcat6里没有了common目录,取而代之的是直接有了一个lib目录,下面就看一下tomcat6是如何配置连接池的
1.需要的文件:MySQL-5.0.27-win32.zip(安装文件),MySQL-connector-java-5.0.4-bin.jar(连接驱动程序),apache-tomcat-6.0.10.exe(安装文件)
2.配置tomcat下的conf下的context.xml文件,在<context></context>之间添加连接池如下:
<Resource name="jdbc/MySQL"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.MySQL.jdbc.Driver"
url="jdbc:MySQL://localhost/test"
username="root"
password="root"
maxActive="100"
maxIdle="30"
maxWait="10000" />
上面的参数不用我说了吧,这些都知道是什么意思吧.
3.配置你的应用下的web.xml中的<web-app></web-app>之间加入:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/MySQLx</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
4.大功告成,不用在原来的server.xml里面配置了,下面就可以编写测试程序了,这个网上就很多了,主要的就上面,当然要把连接驱动程序都放到tomcat6下的lib下面.测试
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"
"http://www.w3.org/TR/REC-html40/strict.dtd">
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
<%@ page session="false" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
<%
out.print("我的测试开始");
DataSource ds = null;
try{
InitialContext ctx=new InitialContext();
ds=(DataSource)ctx.lookup("java:comp/env/jdbc/MySQL");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
提示:users必须是数据库已有的表,
这里的数据库前文提及的Data Source URL配置里包含的数据库。
String strSql = " select * from users";
ResultSet rs = stmt.executeQuery(strSql);
while(rs.next()){
out.print(rs.getString(1));
}
out.print("我的测试结束");
}
catch(Exception ex){
out.print(“出现例外,信息是:”+ex.getMessage());
ex.printStackTrace();
}
%>
</head>
<body>
</body>
</html>
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。