您的位置:首页 > 运维架构 > Tomcat

TOMCAT5.5 First系列(3) -连接池篇

2004-12-31 15:19 357 查看
(转贴请保留原创的相关信息)
上一篇使用简单地说了一下TOMCAT5.5的使用,这次来说说在TOMCAT5.5中常用的数据的连接池建立和测试

PS:由于测试的东西较多,所以发布后直到今天才更新,各位看官见谅.:-) OK,Now is go~~~~
深蓝(LiuYXIT) -- 2005/01/05
数据库和JDBC驱动准备:
MYSQL:
mysql-4.1.8-win.zip
mysql-connector-java-3.0.16-ga.zip
www.mysql.org 中下载

MSSQL:
http://www.microsoft.com/china/sql/downloads/jdbc_sp1.asp

一、MySQL
1.装好MYSQL,解压JDBC驱动(呵呵,废话)

2.把JDBC驱动mysql-connector-java-3.0.16-ga-bin.jar放到TOMCAT_HOME/common/lib里

3.这时我们建一个测试JDBC和数据库是否正常的JSP页MYSQL.JSP(放在第二篇建的虚拟目录SNOW,物理路径为e:/www/snow中),内容如下:
<%@ page contentType="text/html;charset=gbk"%>
<%@ page import="java.sql.*"%>
<html>
<body>

<%
out.print("测试开始<br>");
Class.forName("com.mysql.jdbc.Driver").newInstance();
String url ="jdbc:mysql://localhost/snow?user=root&password=liuyxit&useUnicode=true&characterEncoding=GB2312" ;
//上面对应改snow为你的数据库名,root为你登录的用户,liuyxit为该用户的密码
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement();
String query="select username from sys_user"; //对应改你的表名和字段名
ResultSet rs=stmt.executeQuery(query);
while(rs.next())
{
String s=rs.getString(1);//检查你的字段是不是字符型,不是就不能用getString,根据字段类使用getBoolean等等
out.print(s+"<br>");
}
conn.close();
out.print("我的测试结束<br> --深蓝");
%>
</body>
</html>
//--JSP完--
现在可以重启TOMCAT,放问:http://localhost:8080/snow/MYSQL.jsp
看到你数据库的数据了吗?如果OK就进行下一步

4.把第一篇中建的TOMCAT_HOME/conf/Catalina/localhost/snow.xml改成以下内容:
<?xml version='1.0' encoding='utf-8'?>
<Context path="/snow" docBase="E:/WWW/snow"
debug="5" reloadable="true" crossContext="true">

<Resource name="jdbc/TestMYSQL" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="liuyxit" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/snow?autoReconnect=true"/>
</Context>

5.建一个测试JNDI连接池的JSP文件TestMYSQL.jsp,内空如下:
<%@ page contentType="text/html;charset=gbk"%>
<%@ 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>
</head>
<body>
<%
out.print("我的测试开始<br>");
try{
InitialContext ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/TestMYSQL");
//这里的jdbc/TestMYSQL要跟第四步中的Resource 的name相同
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String strSql = " select * from sys_user";
//sys_user必须是第四步中Data Source的URL对应的数据库里的表
ResultSet rs = stmt.executeQuery(strSql);
while(rs.next()){
out.print(rs.getString(1));
out.print("<br>");
}

}
catch(Exception ex){
out.print("出现异常,信息是:"+ex.getMessage()+"<br>");
ex.printStackTrace();
}
out.print("我的测试结束<br> --深蓝");
%>
</body>
</html>

6.ok,检查无误,重启TOMCAT,访问http://localhost:8080/snow/TestMYSQL.jsp

呵呵,另提一下,注意TestMYSQL的大小写问题.

二、MSSQL
(未完,待续)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: