隨筆-86  評論-33  文章-0  trackbacks-0
          =======學習Tomcat5.0連接池總結========
          Tomcat5.0連接池測試
          1、通過圖形界面在Tomcat5.0里建立DataSource,如果用的專用驅動將驅動包放到tomcat/common/lib下。
          2、建立完后server.xml在 <GlobalNamingResources>標簽下會增加以下內容
          <Resource name="jdbc/Sqlserver" type="javax.sql.DataSource" auth="Container"/>

             
          <ResourceParams name="jdbc/Sqlserver">
                
          <parameter>                                                     <!--factory該參數需要自己添加-->
                  
          <name>factory</name> 
                  
          <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
           
                
          </parameter>
           
                
          <parameter>

                  
          <name>validationQuery</name>
                  
          <value>select * from bookinfor</value>
                
          </parameter>
                
          <parameter>
                  
          <name>maxWait</name>
                  
          <value>5000</value>
                
          </parameter>
                
          <parameter>
                  
          <name>maxActive</name>
                  
          <value>4</value>
                
          </parameter>
                
          <parameter>
                  
          <name>password</name>
                  
          <value>dada</value>
                
          </parameter>
                
          <parameter>
                  
          <name>url</name>
                  
          <value>Jdbc:Odbc:tushu</value>
                
          </parameter>
                
          <parameter>
                  
          <name>driverClassName</name>
                  
          <value>sun.jdbc.odbc.JdbcOdbcDriver</value>
                
          </parameter>
                
          <parameter>
                  
          <name>maxIdle</name>
                  
          <value>2</value>
                
          </parameter>
                
          <parameter>
                  
          <name>username</name>
                  
          <value>sa</value>
                
          </parameter>
              
          </ResourceParams>


          3、由于WAR部署在webapps下,則要在server.xml的<host>標簽下定義相關內容
             手動添加<Context>標簽內容,其中Context標簽內定義了WAR文件的部署情況,即該源只針對該應用,其下再次定義數據源,COPY上面系統生成的數據源參數文件內容。同時可以刪除以上由系統生成的數據源定義,不刪也可以!即只在<host></host>中定義既可!
          <host>
            <Context>
               <!--數據源-->
            </Context>
          </host>

          例子如下:

          <Host appBase="webapps" name="localhost">
                  
          <Context path="/WebData" docBase="D:/Program Files/Tomcat5/webapps/WebData" debug="1" reloadable="true">
                  
          <Resource name="jdbc/Sqlserver" type="javax.sql.DataSource" auth="Container"/>
                  
          <ResourceParams name="jdbc/Sqlserver">
                
          <parameter> 
                  
          <name>factory</name>
           
                  
          <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
           
                
          </parameter>
           
                
          <parameter>

                  
          <name>validationQuery</name>
                  
          <value>select * from bookinfor</value>
                
          </parameter>
                
          <parameter>
                  
          <name>maxWait</name>
                  
          <value>5000</value>
                
          </parameter>
                
          <parameter>
                  
          <name>maxActive</name>
                  
          <value>4</value>
                
          </parameter>
                
          <parameter>
                  
          <name>password</name>
                  
          <value>dada</value>
                
          </parameter>
                
          <parameter>
                  
          <name>url</name>
                  
          <value>Jdbc:Odbc:tushu</value>
                
          </parameter>
                
          <parameter>
                  
          <name>driverClassName</name>
                  
          <value>sun.jdbc.odbc.JdbcOdbcDriver</value>
                
          </parameter>
                
          <parameter>
                  
          <name>maxIdle</name>
                  
          <value>2</value>
                
          </parameter>
                
          <parameter>
                  
          <name>username</name>
                  
          <value>sa</value>
                
          </parameter>
              
          </ResourceParams>
                  
          </Context>
                  
          <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log."    suffix=".txt" timestamp="true"/>
          </Host>

          4、至此數據源Tomcat數據源配置完成!
             下面將對數據源開始使用
             首先配置應用服務webMoudle的web.xml文件,即添加數據源的應用定義
           <resource-ref>
              
          <res-ref-name>jdbc/Sqlserver</res-ref-name>   <!--Tomcat中定義的JNDI的名稱-->
              
          <res-type>javax.sql.DataSource</res-type>     <!--數據源類-->
              
          <res-auth>Container</res-auth>                <!--容器中-->
            
          </resource-ref>


          5、測試代碼:

          <%@ page contentType="text/html;charset=gb2312"%> 
          <%@ page import="java.sql.*"%>

          <%@ page import="javax.sql.*"%>  
          <%@ page import="javax.naming.*"%>
            
          <html>
           
          <body>
           
          <%

          Context ctx 
          = new InitialContext();
          Connection conn
          =null
          ;
                    ctx 
          = new
           InitialContext();
                    DataSource ds 
          =(DataSource)ctx.lookup("java:comp/env/jdbc/Sqlserver");//查找JNDI數據源名

                    conn = ds.getConnection();
          Statement stmt
          =
          conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
          String sql
          ="select * from bookinfor"

          ResultSet rs
          =
          stmt.executeQuery(sql); 
          while
          (rs.next()) {
          out.print(rs.getString(1
          ));
          out.print(rs.getString(2
          ));
          out.print(rs.getString(3
          ));
          }
          out.print("數據庫操作成功,恭喜你"
          );
          rs.close(); 
          stmt.close(); 
          conn.close(); 
          %>
           
          </body>
           
          </html>
          posted on 2005-09-11 10:13 Derek.Guo 閱讀(2062) 評論(0)  編輯  收藏 所屬分類: Java
          MSN:envoydada@hotmail.com QQ:34935442
          主站蜘蛛池模板: 上高县| 武威市| 黎城县| 海口市| 丹凤县| 华容县| 民勤县| 临汾市| 申扎县| 深州市| 仁怀市| 凤山市| 新乐市| 望江县| 寻乌县| 兴安县| 剑川县| 永善县| 新竹市| 任丘市| 时尚| 报价| 宣威市| 长沙县| 新泰市| 广平县| 定州市| 临颍县| 东海县| 江孜县| 颍上县| 石嘴山市| 涪陵区| 浙江省| 保靖县| 遵化市| 灵石县| 余干县| 铜川市| 定远县| 宜春市|