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

Tomcat5.5和MySQL做连接池方法详解

2009-03-24 18:50 337 查看
Tomcat不同版本配置是不同,下面是我的配置方法

1、把MySQL的驱动程序,如mysql-connector-java-5.0.7-bin.jar放在%Tomcat%的common/lib文件夹下

2、用文本编辑器打开%Tomcat%下的的conf/context.xml文件,在<Context>和</Context>元素内部添加如下的配置代码:

<Resource
name = "jdbc/book"
type = "javax.sql.DataSource"
driverClassName = "com.mysql.jdbc.Driver"
url = "jdbc:mysql://localhost:3306/book"
username = "root"
password = "admin"
maxActive ="50"
maxIdle ="15"
maxWait = "5000"
/>
属性说明:name,数据源名称,通常取”jdbc/XXX”的格式,本例写成"jdbc/book".在应用程序应该使用完整的JNDI名,一般形式为"java:comp/env/jdbc/xxx",如本例完整名为“java:comp/env/jdbc/book”。
type,”javax.sql.DataSource”;即数据源
password,数据库用户密码;
driveClassName,数据库驱动;

url属性定义JDBC的连接字串,MySQL使用的是 url = "jdbc:mysql://localhost:3306/数据库名"

如果是SQL Server2000的book数据库,则连接串写为"jdbc:sqlserver://localhost:1433;databaseName=book".
maxIdle,最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连
接将被标记为不可用,然后被释放。设为0表示无限制。
MaxActive,连接池的最大数据库连接数。设为0表示无限制。
maxWait ,最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示
无限制。

3、测试的jsp文件:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
<%@page import="javax.sql.*,javax.naming.*"%>
<%
long beginTime=System.currentTimeMillis();
int n=500;
ResultSet rs=null;
Statement st=null;
Connection con=null;
for(int i=0;i<n;i++)
{
try
{
Context ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/book");
con=ds.getConnection();

String sql="select * from seatid ";
st=con.createStatement();
rs=st.executeQuery(sql);
while(rs.next())
{
rs.getString("seatid");

}
}
catch(Exception e)
{
out.print(e.getMessage());
}
finally
{
if(rs!=null)
rs.close();
if(st!=null)
st.close();
if(con!=null)
con.close();
}
}
long endTime=System.currentTimeMillis();
out.print("用连接池作500次查询耗时:"+(endTime-beginTime)+"毫秒");
%>
</body>
</html>

在浏览器中浏览该jsp文件,成功了哦。记得千万要用完close哦,不然一会就耗尽了。这一点可以通过以root身份登录MySQL,运行show processlist;命令来查看当前所有连接。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐