posts - 23, comments - 0, trackbacks - 0, articles - 3
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

proxool数据池配置总结

Posted on 2008-08-18 17:05 beauty9235 阅读(473) 评论(0)  编辑  收藏

作者: beauty9235  链接:http://beauty9235.javaeye.com/blog/229657  发表时间: 2008年05月23日

声明:本文系JavaEye网站发布的原创博客文章,未经作者书面许可,严禁任何网站转载本文,否则必将追究法律责任!

proxool是一个开放的Java SQL Driver驱动程序,提供了对你选择的其它类型的驱动程序的连接池封装。可以非常简单的移植到现存的代码中。完全可配置。快速,成熟,健壮。可以透明地为你现存的JDBC驱动程序增加连接池功能。

1.直接在Java写

 

private Connection conn = null;
static {
            
try {
                Class.forName(
"org.logicalcobwebs.proxool.ProxoolDriver");
            }

            
catch(ClassNotFoundException e) {
                log.debug(
"can not find db driver"+e);
            }

        }

    
void getConnection() {
        String dataDriver 
= "com.mysql.jdbc.Driver";
        String dataURL 
= "jdbc:mysql://localhost:3306/test";
        String user 
= "root";
        String pwd 
= "";
        
try {
            conn 
= DriverManager.getConnection("proxool.example:" + dataDriver + ":" + dataURL, user, pwd);
        }
 catch (SQLException e) {
            log.debug(e);
        }

    }

2.spring 配置文件里写
context.xml

 

<bean id="dataSource" class="org.logicalcobwebs.proxool.ProxoolDataSource" destroy-method="close">
       
<property name="driver">
         
<value>com.mysql.jdbc.Driver</value>
       
</property>
       
<property name="driverUrl">
         
<value>jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=utf8</value>
       
</property>
       
<property name="user">
         
<value>root</value>
       
</property>
       
<property name="password">
         
<value></value>
       
</property>
       
<property name="alias">
         
<value>example</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>
    
</bean>    

3.结合数据池程序监控
web.xml

 

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

proxool.properties

 jdbc-0.proxool.alias=spring_proxool
jdbc-0.proxool.driver-class=com.mysql.jdbc.Driver
jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=utf8
jdbc-0.user=root
jdbc-0.password=
jdbc-0.proxool.maximum-connection-count=100
jdbc-0.proxool.prototype-count=4
jdbc-0.proxool.house-keeping-test-sql=select CURRENT_DATE
jdbc-0.proxool.verbose=true
jdbc-0.proxool.statistics=10s,1m,1d
jdbc-0.proxool.statistics-log-level=ERROR

spring里的配置

 

 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close"
          singleton
="true">
        
<property name="driverClassName">
            
<value>org.logicalcobwebs.proxool.ProxoolDriver</value>
        
</property>
        
<property name="url">
            
<value>proxool.spring_proxool</value>
        
</property>
    
</bean>

普通的java获得Connection

 

 public Connection getConnection() {
        Connection conn 
= null;
        
try {
        conn 
= DriverManager.getConnection("proxool.spring_proxool");
              }
 catch (SQLException e) {
            log.debug(e);
        }
 
        
return conn;
    }
参考资料http://www.memezilla.com/2005/05/18/proxool-in-practice
本文的讨论也很精彩,浏览讨论>>


JavaEye推荐




只有注册用户登录后才能发表评论。


网站导航: