Spring+Druid连接池简单入门配置

来源:互联网 发布:大话西游2源码 编辑:程序博客网 时间:2024/05/17 08:05

偶尔的机会解释Druid连接池,后起之秀,但是评价不错,另外由于是阿里淘宝使用过的所以还是蛮看好的。


Druid集连接池,监控于一体整好复合当前项目的需要,项目是ssh结构,之前是用C3p0的,现在换一个连接池也是很简单的

spring配置DataSource,配置如下:

[html] view plain copy
  1. <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">   
  2.     <!-- 基本属性 url、user、password -->  
  3.     <property name="url" value="${jdbc_url}" />  
  4.     <property name="username" value="${jdbc_user}" />  
  5.     <property name="password" value="${jdbc_password}" />  
  6.         
  7.     <!-- 配置初始化大小、最小、最大 -->  
  8.     <property name="initialSize" value="1" />  
  9.     <property name="minIdle" value="1" />   
  10.     <property name="maxActive" value="20" />  
  11.    
  12.     <!-- 配置获取连接等待超时的时间 -->  
  13.     <property name="maxWait" value="60000" />  
  14.    
  15.     <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->  
  16.     <property name="timeBetweenEvictionRunsMillis" value="60000" />  
  17.    
  18.     <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->  
  19.     <property name="minEvictableIdleTimeMillis" value="300000" />  
  20.     
  21.     <property name="validationQuery" value="SELECT 'x'" />  
  22.     <property name="testWhileIdle" value="true" />  
  23.     <property name="testOnBorrow" value="false" />  
  24.     <property name="testOnReturn" value="false" />  
  25.    
  26.     <!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->  
  27.     <property name="poolPreparedStatements" value="true" />  
  28.     <property name="maxPoolPreparedStatementPerConnectionSize" value="20" />  
  29.    
  30.     <!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 -->  
  31.     <property name="filters" value="stat" />   
  32. </bean>  


目前这样的配置已经能够使用连接池,注意不要忘记了jar文件,下载地址:http://code.alibabatech.com/mvn/releases/com/alibaba/druid/

Maven配置

<!-- https://mvnrepository.com/artifact/com.alibaba/druid --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.26</version></dependency>


然后是监控的配置:

web.xml

   <servlet>        <servlet-name>DruidStatView</servlet-name>        <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>        <init-param>            <!-- 用户名 -->            <param-name>loginUsername</param-name>            <param-value>druid</param-value>        </init-param>        <init-param>            <!-- 密码 -->            <param-name>loginPassword</param-name>            <param-value>druid</param-value>        </init-param>    </servlet>    <servlet-mapping>        <servlet-name>DruidStatView</servlet-name>        <url-pattern>/druid/*</url-pattern>    </servlet-mapping>



filter可以监控webURl 访问

配置好后访问 http://ip:port/projectName/druid/index.html

html] view plai co这里写图片描述

经过上面的配置,我们已经能够达到连接池的使用和监控,这个只是简单的入门,如果还要更详细的学习,还得论坛上多多交流。


0 0
原创粉丝点击