關於Tomcat的文章(二)

關於Tomcat5.0的數據庫連接池的配置 

           <Context path="/book" docBase="E:/webapp" debug="0" reloadable="true" crossContext="true">
         <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_DBTest_log." suffix=".txt" timestamp="true"/>
         <!--My SQL-->
         <Resource name="jdbc/mysqlDB" auth="Container" type="javax.sql.DataSource"/>-
         <!--mysqlDB是自己起的名字,對應到web.xml中也要用這個名字-->
         <ResourceParams name="jdbc/mysqlDB">
         <parameter>
          <name>factory</name>
          <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
         </parameter>
         <parameter>
          <name>driverClassName</name>
          <!--<value>org.gjt.mm.mysql.Driver</value> 當時用這個驅動連接失敗,所以改用下面的驅動了-->
          <value>com.mysql.jdbc.Driver</value>
         </parameter>
         <parameter>
          <name>url</name>
          <value>jdbc:mysql://localhost/book</value>
         </parameter>
         <parameter>
          <name>username</name>
          <value>root</value>
         </parameter>
         <parameter>
          <name>password</name>
          <value>root</value>
         </parameter>
         <parameter>
          <name>maxActive</name>
          <value>20</value>
         </parameter>
         <parameter>
          <name>maxIdle</name>
          <value>10</value>
         </parameter>
         <parameter>
          <name>maxWait</name>
          <value>10000</value>
         </parameter>
         </ResourceParams>
        </Context>

關於Tomcat5.5的數據庫連接池的配置如下:

<Context path="/book" docBase="E:/webapp" debug="0" reloadable="true" crossContext="true">
         <Resource
             name="jdbc/mysqlDB"
             auth="Container"
             type="java.sql.DataSource"
          maxActive="100"
          maxIdle="30"
          maxWait="10000"
          username="root"
          password="root"
          <!--driverClassName="org.gjt.mm.mysql.Driver"-->
          driverClassName="com.mysql.jdbc.Driver"   <!-用上面那個驅動拋異常,用下面這個則可以正確執行->
          url="jdbc:mysql://localhost/book"/>
        </Context>

關於web應用的web.xml修改如下(兩個版本都一樣的修改):

 <resource-ref>
  <description>My SQL Datasource example</description>
  <res-ref-name>jdbc/mysqlDB</res-ref-name>
  <res-type>javax.sql.DataSource</res-type>
  <res-auth>Container</res-auth>
 </resource-ref>

連接的例子:testDB.jsp

<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<%@page import="javax.sql.DataSource"%>
<%@page import="javax.naming.*"%>
<html>
<body>
<%
try{ 
Context initCtx=new InitialContext(); 
DataSource db = (DataSource)initCtx.lookup("java:comp/env/jdbc/mysqlDB"); 
Connection conn = db.getConnection(); 
Statement stmt = conn.createStatement(); 
ResultSet rs = stmt.executeQuery("SELECT * FROM user"); 
out.println("User-list"+"<br>"); 
while(rs.next()){   
out.print(rs.getString(1)+" ");   
out.print(rs.getString(2)+"<br>"); 

rs.close(); 
stmt.close(); 
conn.close();
}catch(Exception e){ 
out.print(e);
}
%>
</body>
</html>

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章