配置Tomcat5.0的MySQL数据库连接池
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二步:
在浏览器中输入http://127.0.0.1:8080/admin,进入管理工具界面,点击左边的 Resources->Data Sources,选择右边Data Source Actions 里面的下拉菜单中的 Creat New Data Source,进行添加数据库连接池
配置内容如下:
<%@ page session="false" %>
<%@ page contentType="text/html;charset=gb2312" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
<%
out.print("连接池测试开始<br>");
DataSource ds = null;
try{
InitialContext ctx=new InitialContext();
ds=(#34;java:comp/env/jdbc/mysqlpool");
JNDI Name: jdbc/mysqlpool (设置连接池名称)
Data Source URL: jdbc:mysql://localhost/mysql?autoReconnect=true&useUnicode=true&characterEncoding=GB2312
(MySQL的JDBC的URL,mysql改成你要的数据库名称,characterEncoding=GB2312表示连接数据库用的字符集)
<value>yusaihua</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost/mysql?autoReconnect=true&useUnicode=true&characterEncoding=GB2312</value>
</parameter>
</ResourceParams>
<ResourceParams name="jdbc/mysqlpool">
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>4</value>
</parameter>
<parameter>
<name>password</name>
数据库连接池技术可以有效的解决这个问题,它是我们操作数据库的好工具。我没有自己去写数据库连接池程序,用Tomcat提供的连接池来开发应用系统,我现在就将我的配置过程给大家分享:
本机环境:
WindowsXP SP2
JDK1.4.2
Tomcat5.028
mysql-connector-java-3.1.11-bin.jar
out.print("出现例外,信息是:"+ex);
ex.printStackTrace();
}
%>
</head>
<body>
</body>
</html>
代码结束。
ds=(DataSource)ctx.lookup("java:comp/env/jdbc/mysqlpool");这条代码表示找名字叫jdbc/mysqlpool的DataSource。
第三步:
由于刚才配置的数据库连接池是全局模式下的,我们的每一个Web应用都能使用它,但是你要用这个连接池就得在你的相应的Web应用的yourweb.xml(地址是%TOMCAT_HOME%\conf\Catalina\localhost\yourweb.xml) 的 <Context></Context>中加入如下代码:
<ResourceLink name="jdbc/mysqlpool" global="jdbc/mysql" type="javax.sql.DataSourcer"/>
这段文字的意思是申明你的Web要使用的连接池 jdbc/mysqlpool ,这三步是缺一都不可,到这时连接池才就算配置完拉。
第四步:
写一测试代码来测试一下刚才所做的一些吧,新建一个mysqlpool.jsp文件
内容如下:
<%@ page import="java.sql.*"%>
<%@ page import="javax.sql.*"%>
<%@ page import="javax.naming.*"%>
你打开%TOMCAT_HOME\conf\server.xml会发现多了以下代码:
<GlobalNamingResources>
<Environment name="simpleValue" type="ng.Integer" value="30"/>
<Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="erDatabase"/>
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String strSql = " select * from user";
ResultSet rs = stmt.executeQuery(strSql);
</ResourceParams>
</GlobalNamingResources>
其实我们可以照这个样子自己在Server.xml文件中加上面的代码效果是一样的,有了http://127.0.0.1:8080/admin这个工具就对我们来配置数据源就简单多拉,不用担心会出现打错大小字母等等低级错误了。
JDBC Driver Class: com.mysql.jdbc.Driver (MySQL的JDBC驱动名称。)
User Name: root (MySQL的登陆用户名。)
Password:yusaihua (MySQL的登陆密码。)
Max. Active Connections:4 (最大活动连接数,默认是4,正式发布的时候,改成应该改大些1000左右比较好,这个数值自己掂量。)
<value>ers.MemoryUserDatabaseFactory</value>
</parameter>
<parameter>
<name>pathname</name>
<value>conf/tomcat-users.xml</value>
out.print(rs.getString(5)+" ");
out.print(rs.getString(6)+"<br>");
}
out.print("测试结束");
}
catch(Exception ex){
配置Tomcat5.0的MySQL数据库连接池
一提到应用系统我们就会想起一系列的数据库操作:建立数据库连接,打开某个数据库,对数据库中的数据进行存取,关闭数据库,建立一个与数据库的连接(Connection实例)往往是最耗时的,也是耗资源的,然而在进行频繁的这种数据库操作必定会使系统急剧性能下降,甚至可能导致系统耗尽而崩溃。
Max. Idle Connections:2 (最大空闲连接数,默认是2)
Max. Wait for Connection:5000 (等待连接时间,单位是毫秒,默认5000)
Validation Query: (可以不填)
配置完了就点击最下面的 Save 按钮来保存设置,这时还没有完,还要点击最上面的 Commit Changes来提交刚才的设置,现在才算真正的把刚才的配置写入进%TOMCAT_HOME\conf\server.xml中
<name>maxIdle</name>
<value>2</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<Resource name="jdbc/mysqlpool" type="javax.sql.DataSource"/>
<ResourceParams name="UserDatabase">
<parameter>
<name>factory</name>
commons-dbcp-1.2.1.jar
有问题的请与我联系,E-Mail:yusaihua@ QQ:20841403
第一步:
到MySQL的网站上去下载MySQL的JDBC连接驱动mysql-connector-java-3.1.11-bin.jar,放到Tomcat的\common\lib目录下。
Tomcat的JDBC下载地址:/downloads/connector/j/3.1.html,这是MySQL的3.1.13版本的驱动,它支持4.0以上版本的MySQL数据库,我下的是一个ZIP包,没有下那个GZ包版的,有7.9M大,把包中的mysql-connector-java-3.1.11-bin.jar文件解压出来放在Tomcat的安装目录的\common\lib下面就可以拉(我的目录:C:\Program Files\Apache Software Foundation\Tomcat 5.0\common\lib),因为tomcat运行时会先到这个目录下找Jar文件,如果你有兴趣的可以研究下它的源代码 :P。还要查检下%TOMCAT_HOME%下面是否有commons-dbcp-*jar;commons-pool-*jar;commons-collections-*.jar存在,没有的话就要自己到/commons/dbcp/去下,Tomcat5.0都自己带了有这几个commons文件。
while(rs.next()){
out.print(rs.getString(1)+" ");
out.print(rs.getString(2)+" ");
out.print(rs.getString(3)+" ");
out.print(rs.getString(4)+" ");
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>