mysql|数据|数据源
一、配置环境变量:
windowsXP + sp2
softe version:
jdk-1_5_0_01
tomcat5.5.12
mysql4.1.14
mysql-connector-java-3.1.111-bin.jar
路径: tomcat5在C:\Tomcat 5.5;
mysql在C:\Program Files\MySQL\MySQL Server 4.1
jdk在C:\jdk1.5.0_01
Path(在原来的基础上加上):C:\Tomcat 5.5\bin;C:\jdk1.5.0_01;C:\jdk1.5.0_01\bin;C:\Tomcat 5.5\common\lib\servlet-api.jar;C:\Program Files\MySQL\MySQL Server 4.1\bin
CLASSPATH:C:\Tomcat 5.5\common\lib\servlet-api.jar;C:\Tomcat 5.5\common\lib\jsp-api.jar
JAVA_HOME:\jdk1.5.0_01
CATALINA_HOME:C:\Tomcat 5.5
二、建立测试数据库
在mysql中建立一个mywebdb数据库,同时创建一个表tested如下
create database mywebdb
create table tested
(
id int(2),
name varchar(6)
);
然后插入两条测试数据如下
insert into member values(1,"Holmes");
insert into member values(2,"conan");
至此,数据库准备完毕
三、Tomcat5数据源配置
1 以admin账户登入找到TomcatServer/Service/Host/你的Web程序名/DataSource //-->点击这里 。
2 选择“Create New Data Source” 。
3 填写信息
JNDI Name: MyPool //-->连接池名字
Data Source URL: jdbc:mysql://localhost:3306/mywebdb?autoReconnect=true
JDBC Driver Class: com.mysql.jdbc.Driver
//驱动需下载。
User Name: //数据库用户名 。
Password: //数据库密码 。
Max. Active Connections: //最大活动连结数 ,0为不限 。
Max. Idle Connections: //最大等待连结数 ,0为不限 。
Max. Wait for Connection: //建立连接超时时间ms,-1为无限 。
4保存以后一定要点commit changes。
5不用重启,只要刷新页面。
我的server.xml 内容为:
<?xml version="1.0" encoding="UTF-8"?>
<Server>
<Listener className="org.apache.catalina.core.AprLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
<GlobalNamingResources>
<Environment
name="simpleValue"
type="java.lang.Integer"
value="30"/>
<Resource
auth="Container"
description="User database that can be updated and saved"
name="UserDatabase"
type="org.apache.catalina.UserDatabase"
pathname="conf/tomcat-users.xml"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/>
<Resource
name="MyPool"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
password="admin"
maxIdle="5"
maxWait="5000"
username="root"
url="jdbc:mysql://localhost:3306/mywebdb?autoReconnect=true"
maxActive="5"/>
</GlobalNamingResources>
<Service
name="Catalina">
<Connector
port="8080"
redirectPort="8443"
minSpareThreads="25"
connectionTimeout="20000"
maxSpareThreads="75"
maxThreads="150"
maxHttpHeaderSize="8192">
</Connector>
<Connector
port="8009"
redirectPort="8443"
connectionTimeout="0"
protocol="AJP/1.3">
</Connector>
<Engine
defaultHost="localhost"
name="Catalina">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
<Host
appBase="webapps"
name="localhost">
</Host>
</Engine>
</Service>
</Server>
四、配置web.xml
web.xml位于C:\Tomcat 5.5\webapps\ROOT\WEB-INF下,也即是你的WEB里的web.xml。(我是直接使用TOMCAT的工程进行修改)
同样用文本编辑器打开web.xml,然后加入如下语句(在<web-app>与</web-app>之间)
<resource-ref>
<description>DB Connection</description>
<res-ref-name>MyPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
五、编写测试jsp page
在C:\Tomcat 5.5\webapps\ROOT下编写一个test.jsp,代码如下:
<%@ 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{
Statement stmt;
ResultSet rs;
javax.naming.Context ctx=new javax.naming.InitialContext();
javax.sql.DataSource ds= (javax.sql.DataSource)ctx.lookup ("java:comp/env/MyPool"); //红色 字为连接池名,其他固定。
java.sql.Connection con=ds.getConnection();
stmt=con.createStatement();
rs=stmt.executeQuery("select * from tested");
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,打开IE在地址栏中输入:http://localhost:8080/ROOT/test.jsp.
可是显示结果却是:
Cannot create JDBC driver of class '' for connect URL 'null'
请高手指教一下!急!