Tomcat5.0得mysql数据源

今天搞了很久,终于把Tomcat5.0得mysql数据源配置成功了。
最初总是出现“ Cannot create JDBC driver of class '' for connect URL 'null', cause: No suitable driver”的错误。
现在将我的配置成功的心得体会写下来。
1. 先下载mysql的jdbc驱动程序,我用的是mysql-connector-java-5.0.3-bin.jar,将其放在%Tomcat_Home%common/lib目录下。因为这样配置的数据源需要tomcat服务器去利用jdbc的驱动连接数据库,所以,只有将其放在lib下,服务器启动时就能加载这个jar文件了。
2. 我用Myeclipse建立一个项目(例如项目名叫DataSource),然后发布到tomcat服务器上,这样就在%Tomcat_Home%conf/Catalina/localhost建立一个DataSource.xml文件。这应该时这个项目在服务器上的上下文环境吧。我们的数据源就在这里面进行配置了。
3. 这个DataSource.xml文件的内容为:
 
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="D:/Tomcat 5.0/webapps/DataSource" path="/DataSource" workDir="work/Catalina/localhost/DataSource">
 <Resource auth="Container" name="jdbc/datasource" type="javax.sql.DataSource"/>
 
 <ResourceLink name="jdbc/datasource" global="jdbc/datasource" type="javax.sql.DataSource" />              //实际用这一个
<Resource name=” jdbc/datasource” type="javax.sql.DataSource" /> // 这句我用上面这个代替了
 <ResourceParams name="jdbc/datasource">
      <parameter>
        <name>maxWait</name>
        <value>-1</value>
      </parameter>
      <parameter>
        <name>maxActive</name>
        <value>200</value>
      </parameter>
      <parameter>
        <name>password</name>
        <value>root</value>
      </parameter>
      <parameter>
        <name>url</name>
        <value>jdbc:mysql://localhost:3306/archives?autoReconnect=true</value>
      </parameter>
      <parameter>
        <name>driverClassName</name>
        <value>com.mysql.jdbc.Driver</value>
      </parameter>
      <parameter>
        <name>maxIdle</name>
        <value>0</value>
      </parameter>
      <parameter>
        <name>username</name>
        <value>root</value>
      </parameter>
    </ResourceParams>
 
</Context>
4. 不过最开始,我是在Tomcat Administration里面进行的数据源配置的,可是这样tomcat就在%Tomcat_Home%conf/Catalina/localhost/server.xml里面添加了上面红色的部分,将其拷贝到%Tomcat_Home%conf/Catalina/localhost/DataSource.xml中,如上所示。并将 <Resource name=” jdbc/datasource” type="javax.sql.DataSource" /> 换成<ResourceLink name="jdbc/datasource" global="jdbc/datasource" type="javax.sql.DataSource" />就可以了。
5. 最后在你项目的web.xml中添加如下:
< resource-ref >
       < res-ref-name > jdbc/datasource </ res-ref-name >
       < res-type > javax.sql.DataSource </ res-type >
       < res-auth > Container </ res-auth >
    </ resource-ref >
6. 下面写个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/jdbc/datasource"); 
java.sql.Connection con
=ds.getConnection(); 
stmt
=con.createStatement();
rs
=stmt.executeQuery("select * from user");
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 >

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值