您的位置:首页 > 数据库 > Oracle

ssh中的proxool连接池配置

2012-08-14 08:50 411 查看
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&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本身有问题,版本之类。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息