• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            Tomcat連接池配置與使用

            src:http://www.javaeye.com/topic/25161

            其實Tomcat的連接池配置并不是很難,但也花費了我一些時間。今天,終于搞定,希望將經驗分享出來,能給未解決問題的朋友提供幫助。
               
            這里我的Tomcat版本為5.0.28,這個版本應該說是Tomcat比較穩定的一個版本。
               
            首先備份你的$TomcatHome$/conf/server.xml文件($TomcatHome$是指你的tomcat安裝路徑),然后在<Host>節點下添加:

            Java代碼

            1. <Context path="/pool" docBase="pool">  
            2.   <Resource name="jdbc/test" scope="Shareable" type="javax.sql.DataSource"/>  
            3.   <ResourceParams name="jdbc/test">  
            4.     <parameter>  
            5.       <name>factory</name>  
            6.       <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>  
            7.     </parameter>  
            8.     <!-- DBCP database connection settings -->  
            9.     <parameter>  
            10.       <name>url</name>  
            11.       <value>jdbc:jtds:sqlserver://localhost:1433;DatabaseName=pubs</value>  
            12.     </parameter>  
            13.     <parameter>  
            14.       <name>driverClassName</name>  
            15.       <value>net.sourceforge.jtds.jdbc.Driver</value>  
            16.     </parameter>  
            17.     <parameter>  
            18.       <name>username</name>  
            19.       <value>sa</value>  
            20.     </parameter>  
            21.     <parameter>  
            22.       <name>password</name>  
            23.       <value>sa</value>  
            24.     </parameter>  
            25.     <!-- DBCP connection pooling options -->  
            26.     <parameter>  
            27.       <name>maxWait</name>  
            28.       <value>3000</value>  
            29.     </parameter>  
            30.     <parameter>  
            31.       <name>maxIdle</name>  
            32.       <value>100</value>  
            33.     </parameter>  
            34.     <parameter>  
            35.       <name>maxActive</name>  
            36.       <value>10</value>  
            37.     </parameter>  
            38.   </ResourceParams>  
            39. </Context> 
            <Context path="/pool" docBase="pool">
              <Resource name="jdbc/test" scope="Shareable" type="javax.sql.DataSource"/>
              <ResourceParams name="jdbc/test">
                <parameter>
                  <name>factory</name>
                  <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
                </parameter>
                <!-- DBCP database connection settings -->
                <parameter>
                  <name>url</name>
                  <value>jdbc:jtds:sqlserver://localhost:1433;DatabaseName=pubs</value>
                </parameter>
                <parameter>
                  <name>driverClassName</name>
                  <value>net.sourceforge.jtds.jdbc.Driver</value>
                </parameter>
                <parameter>
                  <name>username</name>
                  <value>sa</value>
                </parameter>
                <parameter>
                  <name>password</name>
                  <value>sa</value>
                </parameter>
                <!-- DBCP connection pooling options -->
                <parameter>
                  <name>maxWait</name>
                  <value>3000</value>
                </parameter>
                <parameter>
                  <name>maxIdle</name>
                  <value>100</value>
                </parameter>
                <parameter>
                  <name>maxActive</name>
                  <value>10</value>
                </parameter>
              </ResourceParams>
            </Context>


               
            其中紅色部分是你需要修改的。
                <Context path="/pool" docBase="pool">
            這里的pool是指你的項目在tomcat發布目錄webapps下的目錄路徑,這里我的項目目錄為:.../webapps/pool
                <Resource name="jdbc/test"..>jdbc/test
            為需要通過jndi調用的數據源名稱。
                <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
            這里我們用的是dbcp連接池包,這是apache提供的一個免費開源連接池,而且效率和穩定性都不錯。如果你使用的是tomcat5x或以上的版本,可以在$TomcatHome$/common/lib目錄下找到它。
               
            關于數據庫的設置,這里就不在多說。

               
            下面打開web.xml文件,在其根節點下添加數據源的引用設置。

            Java代碼

            1. <resource-ref>  
            2.   <res-ref-name>jdbc/test</res-ref-name>  
            3.   <res-type>javax.sql.DataSource</res-type>  
            4.   <res-auth>Container</res-auth>  
            5. </resource-ref> 
            <resource-ref>
              <res-ref-name>jdbc/test</res-ref-name>
              <res-type>javax.sql.DataSource</res-type>
              <res-auth>Container</res-auth>
            </resource-ref>


               
            最后我們在代碼中從連接池獲得Connection對象。

            Java代碼

            1. Context context = new InitialContext();  
            2. //獲得數據源  
            3. DataSource ds = context.lookup("java:comp/env/jdbc/test");  
            4. //獲取連接  
            5. Connection conn = ds.getConnection(); 
            Context context = new InitialContext();
            //獲得數據源
            DataSource ds = context.lookup("java:comp/env/jdbc/test");
            //獲取連接
            Connection conn = ds.getConnection();


               
            這樣我們就在代碼中獲得了Connection對象,至于剩下的操作,就完全是jdbc操作了。

             Test.jsp
            <%@ page contentType="text/html; charset=GBK"%>
            <%@ page import="java.sql.*,javax.sql.DataSource,javax.naming.*"%>
            <html>
            <head><title>test.jsp</title></head>
            <body bgcolor="#ffffff">
            <h1>test Tomcat</h1>
            <%
            try
            {
                Context initCtx=new InitialContext();
                DataSource ds = (DataSource)initCtx.lookup("java:comp/env/jdbc/TestDB");
                Connection conn=ds.getConnection();
                out.println("data from database:<br>");
                Statement stmt=conn.createStatement();
                ResultSet rs =stmt.executeQuery("select id, foo, bar from testdata");
                while(rs.next())
                {
                    out.println(rs.getInt("id"));
                    out.println(rs.getString("foo"));
                    out.println(rs.getString("bar"));
                }
                rs.close();
                stmt.close();
            }
            catch(Exception e)
            {
                e.printStackTrace();
            }
            %>
            </body>
            </html>

            聲明:JavaEye文章版權屬于作者,受法律保護。沒有作者書面許可不得轉載。

            推薦鏈接

             

            posted on 2009-08-03 17:54 肥仔 閱讀(180) 評論(0)  編輯 收藏 引用 所屬分類: Web-后臺

            日本强好片久久久久久AAA | 久久久久国色AV免费观看| 精品久久久久久无码中文野结衣| 久久久久人妻精品一区三寸蜜桃| 精品久久久无码21p发布| 国产精品久久99| 国产精品久久新婚兰兰| 曰曰摸天天摸人人看久久久| 久久无码专区国产精品发布| 一本久久a久久精品综合夜夜| 久久精品国产久精国产一老狼| 久久久久久综合一区中文字幕| 久久无码国产专区精品| 国产精品成人99久久久久91gav | 亚洲国产另类久久久精品 | 久久99热只有频精品8| 一本综合久久国产二区| 伊人久久精品线影院| 亚洲精品蜜桃久久久久久| 久久天天躁狠狠躁夜夜av浪潮| 丰满少妇人妻久久久久久 | 精品人妻伦一二三区久久| 国产精品久久久久AV福利动漫| 少妇熟女久久综合网色欲| 久久久久久亚洲精品不卡| 久久免费视频网站| 久久国产精品成人片免费| 久久精品国产亚洲AV不卡| 一本一道久久a久久精品综合| 久久精品亚洲男人的天堂| 国内精品久久久久久久久电影网 | 香蕉99久久国产综合精品宅男自| 一级做a爰片久久毛片16| 久久91精品国产91久久户| 色婷婷综合久久久中文字幕| 伊人久久大香线蕉av不卡| 久久精品国产99国产精品亚洲| 久久天天躁夜夜躁狠狠躁2022| 亚洲欧美国产日韩综合久久| 亚洲国产成人精品无码久久久久久综合 | 久久婷婷人人澡人人|