真才实料才是最真

Dream have no limit

统计

积分与排名

good link

最新评论

tomcat 中配置mysql数据源

用文本编辑器打开D:\tomcat5\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.commons.dbcp.BasicDataSourceFactory</value>

    </parameter>

     <!-- Maximum number of dB connections in pool. Make sure you

         configure your mysqld 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 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 JDBC driver -->

    <parameter>

       <name>driverClassName</name>

       <value>com.mysql.jdbc.Driver</value>

    </parameter>

     <!-- The JDBC connection url for connecting to your MySQL dB.

         The autoReconnect=true argument to the url makes sure that the

         mm.mysql JDBC Driver will automatically reconnect if mysqld closed the

         connection.  mysqld by default closes idle connections after 8 hours.

         -->

    <parameter>

      <name>url</name>

      <value>jdbc:mysql://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 page。

 在d:\myweb\myapps\下编写一个dbtest.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{

  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.bat,打开IE在地址栏中输入:http://localhost:8080/myapps/dbtest.jsp

posted on 2007-09-03 15:14 gavinkin555 阅读(686) 评论(0)  编辑 收藏 引用 所属分类: OTHER TECHNICAL

只有注册用户登录后才能发表评论。