`
e3002
  • 浏览: 77773 次
社区版块
存档分类
最新评论

spring下的proxool连接池配置

阅读更多

 1,下载proxool的jar包,其中包括common-log.jar

这里有两种方式配置spring的数据源

第一种

 1.在web.xml中添加如下内容

<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/config/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><!-proxool的管理界面可以看到其的使用情况--->
  </servlet-mapping>

注:http://localhost:8080/webname/proxooladmin 可以打开后管理界面

 

2.配置spring

 <!--  数据源配置,使用proxool作为连接池-->
    <bean id="hibernateDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close">
      <property name="driverClassName">
         <value>org.logicalcobwebs.proxool.ProxoolDriver</value>
      </property>
      <property name="url">
        <value>proxool.JDBCpool</value> 此处的名字一定要与proxool.xml中的名字一致
      </property>
    </bean>

3.配置proxool.xml内容

 

<?xml version="1.0" encoding="utf-8"?>   
<something-else-entirely>   
<proxool>   
<alias>JDBCpool</alias>   
<!--proxool只能管理由自己产生的连接-->   
<driver-url>jdbc:oracle:thin:@localhost:1521:Med</driver-url>   
<driver-class>oracle.jdbc.driver.OracleDriver</driver-class>   
<driver-properties>  
<property name="user" value=""/>  
<property name="password" value=""/>  
</driver-properties>   
<!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁-->   
<house-keeping-sleep-time>90000</house-keeping-sleep-time>   
<!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受-新版本中该参数已被重写->   
<maximum-new-connections>20</maximum-new-connections>   
<!-- 最少保持的空闲连接数-->   
<prototype-count>5</prototype-count>   
<!-- 允许最大连接数,超过了这个连接,再有请求时,就排在队列中等候,最大的等待请求数由maximum-new-connections决定-->   
<maximum-connection-count>100</maximum-connection-count>   
<!-- 最小连接数-->   
<minimum-connection-count>10</minimum-connection-count>  
</proxool>  
</something-else-entirely>

 

别忘了把jar放在你的WEB-INF 的lib下啊!

 

第二

<bean id="mainDataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource" destroy-method="close">
    <property name="driver">
      <value>oracle.jdbc.driver.OracleDriver</value>
    </property>
    <property name="driverUrl">
      <value>jdbc:oracle:thin:laaa/password@127.0.0.1:1521:ORADB</value>    
 <!--用户名和密码写在一起才调用成功,不然会报 调用无效的参数 错误,下面设置用户名和密码的property好像是无效的,其它数据库也是这样
 比如mysql的也要把用户名和密码写在url里:<property name="driverUrl" value="jdbc:mysql://localhost:3306/blogdb?user=laaa&amp;password=aaaa" />
 -->
    </property>
    <property name="user"> 

      <value>lizongbo</value>
    </property>
    <property name="password">    

   <value>lizongbo</value>
    </property>
    <property name="alias">
      <value>lizongbo</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>

 

注意:开始在原来工程copy了一个proxool.jar.直接放在工程下,但是resin启动时就是提示不能加载类,整了半天也不行,最后换了个高版本的jar。问题解决,所以可能是jar包损坏,如果你是按照官方文档做的,却遇到了一些奇怪问题,那可以考虑下是否那些jar本身有问题,版本之类。。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics