Spring 配置 Proxool

  < bean id = "dataSource"
       class = "org.logicalcobwebs.proxool.ProxoolDataSource" >
       < property name = "driver" >
           < value > com.mysql.jdbc.Driver </ value >
       </ property >
       < property name = "driverUrl" >
           < value > jdbc:mysql://192.168.3.94:3306/JhGroup?user=root &amp; password=123456
&amp;
useUnicode=true &amp; characterEncoding=GBK </ value >
       </ property >
       < property name = "user" >
           < value ></ value >
       </ property >
       < property name = "password" >
           < value ></ value >
       </ property >
      
       <!-- proxool 自动侦察各个连接状态的时间间隔 ( 毫秒 ), 侦察到空闲的连接就马上回
           , 超时的销毁 (默认 30 秒) -->
       < property name = "houseKeepingSleepTime" >
           < value > 90000 </ value >
       </ property >
 
       <!-- 最少保持的空闲连接数 (默认 5 个) -->
       < property name = "prototypeCount" >
           < value > 5 </ value >
       </ property >
 
       <!-- 最大连接数 (默认 15 个) -->
       < property name = "maximumConnectionCount" >
           < value > 15 </ value >
       </ property >
 
       <!-- 最小连接数 (默认 5 个) -->
       < property name = "minimumConnectionCount" >
           < value > 5 </ value >
       </ property >
 
    </ bean >  
 
注:

1
、用户名及密码写在 url 中;
2
、在以下属性中用户名及密码可不写,但该属性必须存在。
< property name = "user" >
     < value ></ value >
  </ property >
  < property name = "password" >
      < value ></ value >
   </ property >
 
 
**********************************************************************
    前几天自己搭建了一个做项目,使用的是spring1.2的框架,后来顺便配置了proxool数据源,都说这个数据源比较好,所以我也来试试。如果有朋友觉得不对的地方,我们可以一起讨论,没有试过的朋友可以试试,我测试过,这样的配置可以使用,不过仅限于测试状态。
 
   首先到网上下载了proxool程序包:
    官方网址: http://proxool.sourceforge.net/   我使用的是0.9版本的.解压缩,放到lib目录下就可以了。
   
    具体的spring的配置文件如下:
    绿色的部分表示spring框架中的PropertyPlaceholderConfigurer类读取一个context.properties文件中的数据,并且将值取出来放到xml文件对应的位置上。相信大家都能看懂。呵呵呵。文件中黄色的部分就是数据源的配置内容了。
     proxool.driver=oracle.jdbc.driver.OracleDriver     驱动的名字,我用的是oracle
     proxool.username=scott                             用户名(proxool没有使用,但是不能没有)
     proxool.password=tiger                             密码(proxool没有使用,但是不能没有)
     proxool.url=jdbc:oracle:thin:scott/tiger@192.168.112.252:1521:orcl url连接串,这个必须确定用户名和密码
     proxool.alias=test                                 数据源的别名
     proxool.houseKeepingSleepTime=30000   proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁 默认30秒)
     proxool.prototypeCount=2              最少保持的空闲连接数 (默认2个)
     proxool.maximumConnectionCount=5      最大连接数 (默认5个)
     proxool.minimumConnectionCount=2      最小连接数 (默认2个)
     proxool.trace=false                  
     proxool.verbose=true
 
     ///
<beans default-autowire="byName" default-lazy-init="false" default-dependency-check="none">
 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="location">
   <value>/WEB-INF/context.properties</value>
  </property>
 </bean>
 <bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource">
  <property name="driver">
   <value>${proxool.driver}</value>
  </property>
  <property name="driverUrl">
   <value>${proxool.url}</value>
  </property>
  <property name="user">
   <value>${proxool.username}</value>
  </property>
  <property name="password">
   <value>${proxool.password}</value>
  </property>
  <property name="alias">
   <value>${proxool.alias}</value>
  </property>
  <property name="houseKeepingSleepTime">
   <value>${proxool.houseKeepingSleepTime}</value>
  </property>
  <property name="prototypeCount">
   <value>${proxool.prototypeCount}</value>
  </property>
  <property name="maximumConnectionCount">
   <value>${proxool.maximumConnectionCount}</value>
  </property>
  <property name="minimumConnectionCount">
   <value>${proxool.minimumConnectionCount}</value>
  </property>
  <property name="trace">
   <value>${proxool.trace}</value>
  </property>
  <property name="verbose">
   <value>${proxool.verbose}</value>
  </property>
 </bean>
</beans>
 
 
************************************************************
 
        如果你想监控数据库连接池的连接情况,可以简单的配置一下就可以了,因为大部分功能源码中都已写好,我们用是只需简单的配置。
    <servlet>
    <servlet-name>Admin</servlet-name>
    <servlet-class>
    org.logicalcobwebs.proxool.admin.servlet.AdminServlet
    </servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Admin</servlet-name>
    <url-pattern>/admin</url-pattern>
    </servlet-mapping>
    如果访问的话,可能有点问题,会报ISO-8859-1的问题。我们一般用的是utf-8,gbk2312.最好的解决办法就是重写源码中的AdminServlet
    .java。我就是重写了这个源码。才解决了这个乱码问题。可能还有其他办法:只需简单的该一个方法就可以了。
    private void printDefinitionEntry(ServletOutputStream out, String name, String value) throws IOException {
        out.println("    <tr>");
        out.print("      <td width=/"200/" valign=/"top/" style=/"" + STYLE_CAPTION + "/">");
        out.print(name);
        out.println("</td>");
        if (value != null) {
            out.print("      <td style=/"" + STYLE_DATA + "/">");
            out.print(new String(value.getBytes("ISO-8859-1"),"utf-8"));
        } else {
            out.print("      <td style=/"" + STYLE_NO_DATA + "/">off");
        }
        out.print("</td>");
        out.println("    </tr>");
    }
    上面红色的部分就是我改的部分,然后把web.xml中的
    <servlet-class>
    com.jack.servlet.AdminServlet
    </servlet-class>
    中<servlet-class>换成你改写的那个类。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值