[转贴请注明出处]
龙族联盟:网络巡警
Tomcat+mysql连接池的配置与测试
环境:
Tomcat6.0.18
Mysql: 5.1.36
Windwos XP sp2
最近需要用到Tomcat+mysql连接池的配置,今天在网上查了好多资料,老资料太多,对于以上的老版本tomcat可能有用,本人没有测试过,正确写出tomcat6.0配置的文间很少!好多资料上面的配置对于现在新版的几乎都是有问题的,十错七八!今天把我配置的正确方法写下来,供大家参考!
1.安装tomcat,略;
2.安装mysql略,
进入mysql,新建数据库test1;
test1 数据库 中建表pet,表结构如下;
mysql> desc pet;
+---------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+----------+------+-----+---------+-------+
| name | char(20) | YES | | NULL | |
| owner | char(20) | YES | | NULL | |
| species | char(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| birth | date | YES | | NULL | |
| death | date | YES | | NULL | |
+---------+----------+------+-----+---------+-------+
加入一些数据;
INSERT INTO pet VALUES ('猪八戒','唐僧','神仙','f','2001-12-01',NULL);
这里注意mysql表字符集设置,很有可能在客户端和JSP中乱码,可参考我写的文章: eclipse连接mysql乱码及mysql[ERROR 1366 (HY000):错误]
网上搜到的好多资料说:tomcat配置mysql连接池需要改:
配置tomcat下的conf下的context.xml
配置tomcat下的conf下的webt.xml
配置tomcat下的conf下的server.xml 乱七八糟,害我把Tomcat6.0重装一次!浪费了好多时间.
正确的配置方法只需要修改context.xml和web.xml两个文件:
context.xml在之间添加连接池如下:
type="javax.sql.DataSource"
maxActive="50" maxIdle="10" maxWait="5000"
username="你的mysql用户" password="你的mysql密码"
driverClassName="org.gjt.mm.mysql.Driver"
url="jdbc:mysql://localhost/test1" />
web.xml中的之间加入:
DB Connection
jdbc/mysql
javax.sql.DataSource
Container
注意的地方: context.xml文件中的name="jdbc/mysql"要和web.xml中的jdbc/mysql要一致;
mysql 的jdbc驱动复制到配置tomcat下的lib目录;
OK,到些就配置完了,下来就是写测试代码:
打开Eclipse其手工建个WEB project(我的工程名mysql),加入mysql JDBC驱动,记得这个一定要加入;
新建jsp文件:
mysql连接池测试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();
String strSql = " select * from pet";
ResultSet rs = stmt.executeQuery(strSql);
while(rs.next()){
out.print("name:" + rs.getString(1));
out.print("\t所有者:" + rs.getString(2));
out.print("\tbirth:" + rs.getString("birth"));
out.println("
");
}
rs.close();
stmt.close();
conn.close();
}catch(Exception ex){
ex.printStackTrace();
}
%>
启动tomcat ,部署web 工程
IE中打开:http://localhost/mysql/
显示结果:
我的测试开始
name:猪八戒 所有者:唐僧 birth:2001-12-01
以上本人测试成功,希望能给朋友们有所参考!
2009-7-24
龙族联盟:网络巡警
分享到:
2011-09-14 10:41
浏览 3221
分类:数据库
评论