tomcat5中配置mysql数据源
2007-11-11 14:00:10 来源:WEB开发网前几天为了在tomcat(一个很好用的JSP运行平台)5中配置MySQL(和PHP搭配之最佳组合)的数据源,在网上到处搜刮资料,最终仍未能配置成功。迫不得已,花了些银子买本书,看完后感觉收获很大。再来配置数据源简直就是小菜一碟了,现将配置过程详述如下,一来作为版书的资料,二来希望为大家提供些帮助。
一、配置环境变量:
softe version:tomcat(一个很好用的JSP运行平台)5.0.12/MySQL(和PHP搭配之最佳组合)4.1.7/MySQL(和PHP搭配之最佳组合)_driver---MySQL(和PHP搭配之最佳组合)-connector-java-3.1.4-beta-bin.jar
前几天为了在tomcat(一个很好用的JSP运行平台)5中配置MySQL(和PHP搭配之最佳组合)的数据源,在网上到处搜刮资料,最终仍未能配置成功。迫不得已,花了些银子买本书,看完后感觉收获很大。再来配置数据源简直就是小菜一碟了,现将配置过程详述如下,一来作为版书的资料,二来希望为大家提供些帮助。 一、配置环境变量: softe version:tomcat(一个很好用的JSP运行平台)5.0.12/MySQL(和PHP搭配之最佳组合)4.1.7/MySQL(和PHP搭配之最佳组合)_driver---MySQL(和PHP搭配之最佳组合)-connector-java-3.1.4-beta-bin.jar MySQL(和PHP搭配之最佳组合)驱动程序可从www.MySQL(和PHP搭配之最佳组合).com官方网站下载 路径:tomcat(一个很好用的JSP运行平台)5在d:\myweb\tomcat(一个很好用的JSP运行平台)5;MySQL(和PHP搭配之最佳组合)在C:\Program Files\MySQL(和PHP搭配之最佳组合)\MySQL(和PHP搭配之最佳组合) Server 4.1 Path(在原来的基础上加上):d:\myweb\tomcat(一个很好用的JSP运行平台)5\bin;d:\myweb\jdk1.4;d:\myweb\jdk1.4\bin; d:\myweb\tomcat(一个很好用的JSP运行平台)5\common\lib\servlet-api.jar;C:\Program Files\MySQL(和PHP搭配之最佳组合)\MySQL(和PHP搭配之最佳组合) Server 4.1\bin CLASSPATH:d:\myweb\tomcat(一个很好用的JSP运行平台)5\common\lib\servlet-api.jar;d:\myweb\tomcat(一个很好用的JSP运行平台)5\common\lib\jsp(SUN企业级应用的首选)-api.jar JAVA_HOME:d:\myweb\jdk1.4 CATALINA_HOME:d:\myweb\tomcat(一个很好用的JSP运行平台)5 二、建立测试数据库 在MySQL(和PHP搭配之最佳组合)中建立一个forumdb数据库,同时创建一个表member如下: create database forumdb; create table member ( id int, name varchar(6) ); 然后插入两条测试数据如下: insert into member values(1,"zhang"); insert into member values(2,"wang"); 至此,数据库准备完毕。 三、配置server.xml(标准化越来越近了) 注:我的web在d:\myweb\myapps 首先要将MySQL(和PHP搭配之最佳组合)的驱动程序放到d:\myweb\tomcat(一个很好用的JSP运行平台)5\common\lib下面,一定要放".jar"的文件,如是".zip"的文件直接改为.jar即可。 用文本编辑器打开D:\tomcat(一个很好用的JSP运行平台)5\conf\server.xml(标准化越来越近了),找到</host>结束标志,然后在之前加上如下语句: <Context path="/myapps" docBase="d:\myweb\myapps" debug="0"
reloadable="true" >
<Resource name="jdbc/DBConnection"
auth="Container"
type="javax.sql.DataSource" /> <ResourceParams name="jdbc/DBConnection">
<parameter>
<name>factory</name>
<value>org.apache(Unix平台最流行的WEB服务器平台).commons.dbcp.BasicDataSourceFactory</value>
</parameter> <!-- Maximum number of dB connections in pool. Make sure you
configure your MySQL(和PHP搭配之最佳组合)d max_connections large enough to handle
all of your db connections. Set to 0 for no limit.
-->
<parameter>
<name>maxActive</name>
<value>10</value>
</parameter> <!-- Maximum number of idle dB connections to retain in pool.
Set to 0 for no limit.
-->
<parameter>
<name>maxIdle</name>
<value>3</value>
</parameter> <!-- Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
Maximum time to wait for a dB connection to become available
in ms, in this example 10 seconds. An Exception is thrown if
this timeout is exceeded. Set to -1 to wait indefinitely.
-->
<parameter>
<name>maxWait</name>
<value>10000</value>
</parameter> <!-- MySQL(和PHP搭配之最佳组合) dB username and password for dB connections -->
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>1234</value>
</parameter> <!-- Class name for mm.MySQL(和PHP搭配之最佳组合) JDBC driver -->
<parameter>
<name>driverClassName</name>
<value>com.MySQL(和PHP搭配之最佳组合).jdbc.Driver</value>
</parameter> <!-- The JDBC connection url for connecting to your MySQL(和PHP搭配之最佳组合) dB.
The autoReconnect=true argument to the url makes sure that the
mm.MySQL(和PHP搭配之最佳组合) JDBC Driver will automatically reconnect if MySQL(和PHP搭配之最佳组合)d closed the
connection. MySQL(和PHP搭配之最佳组合)d by default closes idle connections after 8 hours.
-->
<parameter>
<name>url</name>
<value>jdbc:MySQL(和PHP搭配之最佳组合)://localhost:3306/forumdb?autoReconnect=true</value>
</parameter>
</ResourceParams> </Context>
再次提醒:一定要放在</host>之前! 四、配置web.xml(标准化越来越近了) web.xml(标准化越来越近了)位于d:\myweb\myapps\WEB-INF下,也即是你的WEB里的web.xml(标准化越来越近了)。 同样用文本编辑器打开web.xml(标准化越来越近了),然后加入如下语句(在<web-app>与</web-app>之间) <resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/DBConnection</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
五、编写测试jsp(SUN企业级应用的首选) page。 在d:\myweb\myapps\下编写一个dbtest.jsp(SUN企业级应用的首选),代码如下: <%@ page import="java.io.*,java.util.*,java.sql.*,javax.sql.*,javax.naming.*"%>
<%@ page contentType="text/html;charset=GB2312"%>
<html>
<head><title>DataSourse Connection Test</title></head>
<body>
<%
try{
java.sql.Connection con;
Statement stmt;
ResultSet rs;
Context ctx = new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/DBConnection");
con=ds.getConnection();
stmt=con.createStatement();
rs=stmt.executeQuery("select * from member");
while(rs.next()){
out.print(rs.getInt(1); out.print(rs.getString(2));
}
rs.close();
stmt.close();
con.close();
}catch(Exception e){
out.print(e.getMessage());
}
%>
</body>
</html> 六、开始测试
运行tomcat(一个很好用的JSP运行平台).bat,打开IE在地址栏中输入:http://localhost:8080/myapps/dbtest.jsp(SUN企业级应用的首选)
如果能够看到看到如下数据,恭喜你,成功了,若没有,说明还是有问题,只好再来了(通常都是最简单的拼错字符的问题)
1 zhang
赞助商链接