• <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 肥仔 閱讀(179) 評論(0)  編輯 收藏 引用 所屬分類: Web-后臺

            亚洲国产精品婷婷久久| 久久99精品国产自在现线小黄鸭 | 国产午夜电影久久| 免费一级欧美大片久久网| 久久久久se色偷偷亚洲精品av | 亚洲精品成人网久久久久久| 久久久久久午夜精品| 99久久这里只有精品| 亚洲欧美精品一区久久中文字幕 | 香蕉久久夜色精品国产小说| 一本色道久久99一综合| 久久久久女教师免费一区| 久久精品欧美日韩精品| 亚洲日韩欧美一区久久久久我| 国产精品视频久久| 伊人久久精品无码av一区| 手机看片久久高清国产日韩| 久久91亚洲人成电影网站| 亚洲精品美女久久777777| 久久亚洲色一区二区三区| 久久综合九色综合精品| 国产成人久久精品激情| 午夜精品久久久久久久久| 热久久国产欧美一区二区精品| 久久久国产精品福利免费| 久久久久人妻精品一区二区三区 | 久久久久免费精品国产| 久久综合九色综合网站| 2020久久精品亚洲热综合一本| 久久精品国产亚洲av瑜伽| 国産精品久久久久久久| 激情五月综合综合久久69| 99久久99久久精品国产| 成人午夜精品久久久久久久小说| 9久久9久久精品| 亚洲国产精品一区二区久久| 久久精品国产99国产电影网| 亚洲国产精品久久久久| 国内精品久久久久久久久电影网| 91久久九九无码成人网站| 久久国产精品国语对白|