以前用过用tomcat连接池的,但是好象很多次都是连接不成功,后来就一直没有用了,都是用的自己写的连接池,现在看见很多人都在用tomcat的连接池,都忘记了怎么用了,哪个好心人帮帮忙,把步骤说一下,非常感谢,有代码那就是更好的,谢谢!

解决方案 »

  1.   

    1.server.xml中的配置<Context path="/DBTest" docBase="DBTest"
            debug="5" reloadable="true" crossContext="true">    <!-- maxActive: 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.
             -->    <!-- maxIdle: Maximum number of idle dB connections to retain in pool.
             Set to -1 for no limit.  See also the DBCP documentation on this
             and the minEvictableIdleTimeMillis configuration parameter.
             -->    <!-- maxWait: 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.
             -->    <!-- username and password: MySQL dB username and password for dB connections  -->    <!-- driverClassName: Class name for the old mm.mysql JDBC driver is
             org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
             Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
             -->
        
        <!-- url: 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.
             -->  <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
                   maxActive="100" maxIdle="30" maxWait="10000"
                   username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
                   url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/></Context>2. web.xml  配置Now create a WEB-INF/web.xml for this test application.    
     <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
        version="2.4">
      <description>MySQL Test App</description>
      <resource-ref>
          <description>DB Connection</description>
          <res-ref-name>jdbc/TestDB</res-ref-name>
          <res-type>javax.sql.DataSource</res-type>
          <res-auth>Container</res-auth>
      </resource-ref>
    </web-app>3.调用
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %><sql:query var="rs" dataSource="jdbc/TestDB">
    select id, foo, bar from testdata
    </sql:query><html>
      <head>
        <title>DB Test</title>
      </head>
      <body>  <h2>Results</h2>
      
    <c:forEach var="row" items="${rs.rows}">
        Foo ${row.foo}<br/>
        Bar ${row.bar}<br/>
    </c:forEach>  </body>
    </html>我是copy的tomcat5。5的文档具体的信息改成你自己的项目的就可以了看的懂英文看这个http://tomcat.apache.org/tomcat-5.5-doc/jndi-datasource-examples-howto.html
     
      

  2.   

    如果要按照楼上的写,还必须要引入JSTL的两个JAR文件
      

  3.   

    这个'jdbc/TestDB'中的TestDB是什么变量或参数,具体代表什么。帮忙解释一下