夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
          <2008年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          公告

          本博客中未注原創(chuàng)的文章均為轉(zhuǎn)載,對轉(zhuǎn)載內(nèi)容可能做了些修改和增加圖片注釋,如果侵犯了您的版權(quán),或沒有注明原作者,請諒解

          常用鏈接

          留言簿(21)

          隨筆分類(644)

          隨筆檔案(669)

          文章檔案(6)

          最新隨筆

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          hibernate開發(fā)組推薦c3p0,spring開發(fā)組推薦dbcp,但是dbcp連接池有weblogic連接池同樣的問題,就是強(qiáng)行關(guān)閉連接或數(shù)據(jù)庫重啟后,無法 reconnect ,告訴連接被重置,這個設(shè)置可以解決。hibernate in action推薦c3p0和proxool。

          我推薦proxool,因為他不但可以監(jiān)控后臺。還可以有效的釋放連接。在connection close時,也就是歸還connection,
          關(guān)閉所有的statement,并且判斷是否autocommit,如果不行,就rollback,并且設(shè)置true,
          可以參考proxool的org.logicalcobwebs.proxool.ConnectionResetter類
          connection pool把connection reset置回initial state。
          dbcp的配置
          <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
          <property name="driverClassName" value="${db.driverClassName}"/>
          <property name="url" value="${db.url}"/>
          <property name="username" value="${db.username}"/>
          <property name="password" value="${db.password}"/>

           <property name="validationQuery">
          <value>SELECT 1</value>
          </property>
          <property name="testOnBorrow">
          <value>true</value>
          </property>
          </bean>

          c3p0的配置, 注意是''driverClass' , 'jdbcUrl', 'user' , 'password'

          <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
                  <property name="driverClass">
                  <value>net.sourceforge.jtds.jdbc.Driver</value>
                  </property>
                  <property name="jdbcUrl">

          <value>jdbc:jtds:sqlserver://localhost:1433/hua</value>
                  </property>
                  <property name="user">
                  <value>sa</value>
                  </property>
                  <property name="password">
                  <value>hua</value>
                  </property>
                  <property name="minPoolSize">
                  <value>15</value>
                  </property>
                  <property name="acquireIncrement">
                  <value>5</value>
                  </property>
                  <property name="maxPoolSize">
                  <value>25</value>
                  </property>
                  </bean>

          <bean id="c3p0DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
                  destroy-method="close">
                  <property name="driverClass">
                      <value>${db.driverClass}</value>
                  </property>
                  <property name="jdbcUrl">
                      <value>${db.url}</value>
                  </property>
                   <!--
                  <property name="user">
                      <value>${db.user}</value>
                  </property>
                  <property name="password">
                      <value>${db.pass}</value>
                  </property>
                  -->
                  <property name="properties">
                      <props>
                          <prop key="c3p0.acquire_increment">5</prop>
                          <prop key="c3p0.idle_test_period">100</prop>
                          <prop key="c3p0.max_size">100</prop>
                          <prop key="c3p0.max_statements">0</prop>
                          <prop key="c3p0.min_size">10</prop>
                          <prop key="user">${db.user}</prop>
                          <prop key="password">${db.pass}</prop>
                      </props>
                  </property>
              </bean>
          xapool的配置
           <bean id="dataSource" class="org.enhydra.jdbc.pool.StandardPoolDataSource" destroy-method="stopPool">
              <constructor-arg index="0">
                <bean class="org.enhydra.jdbc.standard.StandardConnectionPoolDataSource">
                  <property name="driverName"><value>com.mysql.jdbc.Driver</value></property>
                  <property name="url"><value>jdbc:mysql://localhost/dbname</value></property>
                </bean>
              </constructor-arg>
              <property name="user"><value>root</value></property>
              <property name="password"><value>mypass</value></property>
              <property name="minSize"><value>1</value></property>
              <property name="maxSize"><value>5</value></property>
              <property name="jdbcTestStmt"><value>select 1</value></property>
            </bean>
          c-jdbc的配置
          <bean id="dataSource" class="org.objectweb.cjdbc.driver.DataSource">
              <property name="url"><value>jdbc:cjdbc://127.0.0.1:25322/vdb?user=vuser</value></property>
            </bean>

          weblogic的連接池解決辦法:Test Reserved Connections: 如果選擇了這個選項,服務(wù)器會在把連接提供給客戶端之前
          對其進(jìn)行測試。 Test Created Connections: 如果選擇了這個選項,就會在創(chuàng)建一個JDBC
          連接之后和在把它添加到JDBC連接池中的可用連接列表之前,對該JDBC連接進(jìn)行測試。

          tomcat的jndi關(guān)于dbcp的配置:

          <parameter>
                   <name>factory</name>
                   <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
                 </parameter>
                 <parameter>
                   <name>driverClassName</name>
                   <value>com.sybase.jdbc2.jdbc.SybDriver</value>
                 </parameter>
                 <parameter>
                   <name>url</name>
                   <value>xyz</value>
                 </parameter>
                 <parameter>
                   <name>username</name>
                   <value>xyz</value>
                 </parameter>
                 <parameter>
                   <name>password</name>
                   <value>xyz</value>
                 </parameter>
                 <parameter>
                   <name>maxActive</name>
                   <value>5</value>
                 </parameter>
                 <parameter>
                   <name>maxIdle</name>
                   <value>5</value>
                 </parameter>
                 <parameter>
                   <name>maxWait</name>
                   <value>-1</value>
                 </parameter>
                 <parameter>
                   <name>removeAbandoned</name>
                   <value>true</value>
                 </parameter>
                 <parameter>
                   <name>validationQuery</name>
                   <value>select count(*) from sometable where 1 = 0</value>
                 </parameter>
                 <parameter>
                   <name>testOnBorrow</name>
                   <value>true</value>
                 </parameter>

          proxool
          <bean id="proxooldataSource" class="*.proxool.ProxoolDataSource" destroy-method="close">
                <property name="alias"><value>newstest</value></property>
                <property name="driver"><value>net.sourceforge.jtds.jdbc.Driver</value></property>
                <property name="driverUrl"><value>jdbc:jtds:sqlserver://127.0.0.1:1433/news<value></property>
                <property name="user"><value>sa</value></property>
                <property name="password"><value>1</value></property>
                <property name="houseKeepingSleepTime"><value>90000</value></property>
                <property name="prototypeCount"><value>5</value></property>
                <property name="maximumConnectionCount"><value>100</value></property>
                <property name="minimumConnectionCount"><value>10</value></property>
                <property name="trace"><value>true</value></property>
                <property name="verbose"><value>true</value></property>
              </bean>

          posted on 2008-04-16 10:30 HUIKK 閱讀(2131) 評論(0)  編輯  收藏 所屬分類: Spring
          主站蜘蛛池模板: 和硕县| 镇江市| 班玛县| 海原县| 怀宁县| 喀喇沁旗| 沂水县| 永善县| 犍为县| 平安县| 清河县| 桦川县| 成武县| 紫阳县| 苗栗市| 菏泽市| 绥中县| 庄河市| 衡水市| 青田县| 临泉县| 朝阳区| 申扎县| 商水县| 修水县| 大同市| 龙州县| 永新县| 永登县| 清流县| 类乌齐县| 胶南市| 玉林市| 黄骅市| 南靖县| 龙海市| 韩城市| 楚雄市| 布尔津县| 北安市| 鹰潭市|