ice world

          There is nothing too difficult if you put your heart into it.
          posts - 104, comments - 103, trackbacks - 0, articles - 0

          proxool數(shù)據(jù)源的配置方法

          Posted on 2011-04-16 14:11 IceWee 閱讀(393) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          以前都是用SSH框架,spring借助的是Tomcat的dbcp數(shù)據(jù)源,最近做網(wǎng)站也沒用什么框架,直接Sservlet+JSP,依舊用的 Tomcat的dbcp做數(shù)據(jù)源,經(jīng)常發(fā)現(xiàn)網(wǎng)絡(luò)不好時(shí)連接就獲取不到了,那是因?yàn)槌刈又械倪B接都已經(jīng)無效了,Tomcat數(shù)據(jù)源的自動(dòng)重連貌似配置較為復(fù)雜,很多人建議用proxool做數(shù)據(jù)源,下面是proxool的配置方法:

          1.下載proxool,自己到網(wǎng)站http://proxool.sourceforge.net/download.html隨便下載一個(gè)版本,解壓后進(jìn)入目錄lib,會(huì)得到兩個(gè)jar文件,分別為proxool-0.9.1.jar(版本不同可能名稱有所不同)和proxool-cglib.jar,將這兩個(gè)jar文件拷貝到項(xiàng)目的WEB-INF/lib下

          2.配置web.xml,需要配置proxool的Servlet,如下:

          <servlet>
              
          <servlet-name>proxoolServletConfigurator</servlet-name>
              
          <servlet-class>org.logicalcobwebs.proxool.configuration.ServletConfigurator
              
          </servlet-class>
              
          <init-param>
                  
          <param-name>xmlFile</param-name>
                  
          <param-value>WEB-INF/proxool.xml</param-value>
              
          </init-param>
              
          <load-on-startup>1</load-on-startup>
          </servlet>
          <servlet>
              
          <servlet-name>proxooladmin</servlet-name>
              
          <servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet
              
          </servlet-class>
          </servlet>
          <servlet-mapping>
              
          <servlet-name>proxooladmin</servlet-name>
              
          <url-pattern>/proxooladmin</url-pattern>
          </servlet-mapping>


          3.創(chuàng)建proxool.xml文件,將此文件放在與web.xml同級(jí)目錄下,即WEB-INF下

          <?xml version="1.0" encoding="UTF-8"?>
          <something-else-entirely>
              
          <proxool>
                  
          <alias>testDB</alias>
                  
          <driver-url>jdbc:oracle:thin:@192.168.1.229:1521:orcl</driver-url>
                  
          <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
                  
          <driver-properties>
                      
          <property name="user" value="test_user" />
                      
          <property name="password" value="password" />
                  
          </driver-properties>
                  
          <maximum-connection-count>10</maximum-connection-count>
                  
          <minimum-connection-count>5</minimum-connection-count>
                  
          <prototype-count>5</prototype-count>
                  
          <test-before-use>true</test-before-use>
                  
          <house-keeping-sleep-time>180000</house-keeping-sleep-time>
                  
          <house-keeping-test-sql>select CURRENT_DATE from dual</house-keeping-test-sql>
              
          </proxool>
          </something-else-entirely>

          上面的<test-before-use>true</test-before-use>據(jù)說是用來自動(dòng)重連的,也就是在網(wǎng)絡(luò)錯(cuò)誤或數(shù)據(jù)庫重啟等等原因?qū)е屡c數(shù)據(jù)庫斷開,每次獲取連接前都會(huì)檢查,如果現(xiàn)在池子中的連接已經(jīng)無效將會(huì)重新創(chuàng)建


          4.在java中獲取數(shù)據(jù)庫連接的代碼

          Connection con = DriverManager.getConnection("proxool.testDB");


          主站蜘蛛池模板: 原平市| 临泽县| 龙岩市| 腾冲县| 铁岭县| 文登市| 遵义县| 蒙自县| 正宁县| 尼勒克县| 故城县| 页游| 麻江县| 垦利县| 茌平县| 满城县| 威信县| 玉环县| 扎赉特旗| 酒泉市| 休宁县| 马公市| 岳阳市| 朔州市| 武胜县| 祁门县| 麻城市| 昌黎县| 泰兴市| 临颍县| 个旧市| 巴里| 定陶县| 广南县| 托里县| 托克逊县| 敦煌市| 桂阳县| 龙州县| 光泽县| 海城市|