隨筆-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 閱讀(2059) 評論(0)  編輯  收藏 所屬分類: Java
          MSN:envoydada@hotmail.com QQ:34935442
          主站蜘蛛池模板: 昌江| 竹溪县| 图木舒克市| 湛江市| 寿光市| 邯郸县| 武强县| 土默特左旗| 临湘市| 双流县| 若尔盖县| 卫辉市| 闽侯县| 吉林市| 宕昌县| 高陵县| 淅川县| 大庆市| 榆林市| 鹰潭市| 石楼县| 邵阳县| 丹凤县| 祁门县| 新丰县| 江达县| 运城市| 太湖县| 武鸣县| 确山县| 三门峡市| 武威市| 海城市| 巩义市| 德化县| 舒城县| 万全县| 于田县| 潼关县| 淮阳县| 昌平区|