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

             
          <ResourceParams name="jdbc/Sqlserver">
                
          <parameter>                                                     <!--factory該參數(shù)需要自己添加-->
                  
          <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>標簽下定義相關(guān)內(nèi)容
             手動添加<Context>標簽內(nèi)容,其中Context標簽內(nèi)定義了WAR文件的部署情況,即該源只針對該應用,其下再次定義數(shù)據(jù)源,COPY上面系統(tǒng)生成的數(shù)據(jù)源參數(shù)文件內(nèi)容。同時可以刪除以上由系統(tǒng)生成的數(shù)據(jù)源定義,不刪也可以!即只在<host></host>中定義既可!
          <host>
            <Context>
               <!--數(shù)據(jù)源-->
            </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、至此數(shù)據(jù)源Tomcat數(shù)據(jù)源配置完成!
             下面將對數(shù)據(jù)源開始使用
             首先配置應用服務webMoudle的web.xml文件,即添加數(shù)據(jù)源的應用定義
           <resource-ref>
              
          <res-ref-name>jdbc/Sqlserver</res-ref-name>   <!--Tomcat中定義的JNDI的名稱-->
              
          <res-type>javax.sql.DataSource</res-type>     <!--數(shù)據(jù)源類-->
              
          <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數(shù)據(jù)源名

                    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("數(shù)據(jù)庫操作成功,恭喜你"
          );
          rs.close(); 
          stmt.close(); 
          conn.close(); 
          %>
           
          </body>
           
          </html>
          posted on 2005-09-11 10:13 Derek.Guo 閱讀(2063) 評論(0)  編輯  收藏 所屬分類: Java
          MSN:envoydada@hotmail.com QQ:34935442
          主站蜘蛛池模板: 灵石县| 内乡县| 浪卡子县| 剑川县| 张掖市| 茌平县| 任丘市| 贵阳市| 广西| 巴塘县| 调兵山市| 尼勒克县| 汤原县| 忻城县| 定日县| 娱乐| 万全县| 石台县| 桐乡市| 牡丹江市| 蓝山县| 宣恩县| 祁门县| 苗栗市| 安宁市| 马鞍山市| 台东县| 顺义区| 张掖市| 杨浦区| 自贡市| 淄博市| 富裕县| 乌苏市| 望城县| 水城县| 荣昌县| 克拉玛依市| 南川市| 得荣县| 阳城县|