Druid-目前最好的连接池


Druid是什么

Druid是阿里开源的连接池,是Java语言中最好的数据库连接池.Druid能够提供强大的监控和扩展功能,是为监控而生的数据库连接池!
GitHub:https://github.com/alibaba/druid/

添加依赖

  1. <dependency>
  2.    <groupId>com.alibaba</groupId>
  3.    <artifactId>druid</artifactId>
  4.    <version>1.1.2</version>
  5. </dependency>

参考配置

  1. <beanid="dataSource"class="com.alibaba.druid.pool.DruidDataSource"init-method="init"destroy-method="close">
  2.      <!-- 基本属性 url、user、password -->
  3.      <propertyname="url"value="${jdbc_url}"/>
  4.      <propertyname="username"value="${jdbc_user}"/>
  5.      <propertyname="password"value="${jdbc_password}"/>
  6.      <!-- 配置初始化大小、最小、最大 -->
  7.      <propertyname="initialSize"value="1"/>
  8.      <propertyname="minIdle"value="1"/>
  9.      <propertyname="maxActive"value="20"/>
  10.      <!-- 配置获取连接等待超时的时间 -->
  11.      <propertyname="maxWait"value="60000"/>
  12.      <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
  13.      <propertyname="timeBetweenEvictionRunsMillis"value="60000"/>
  14.      <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
  15.      <propertyname="minEvictableIdleTimeMillis"value="300000"/>
  16.      <propertyname="validationQuery"value="SELECT 'x'"/>
  17.      <propertyname="testWhileIdle"value="true"/>
  18.      <propertyname="testOnBorrow"value="false"/>
  19.      <propertyname="testOnReturn"value="false"/>
  20.      <!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
  21.      <propertyname="poolPreparedStatements"value="true"/>
  22.      <propertyname="maxPoolPreparedStatementPerConnectionSize"value="20"/>
  23.      <!-- 配置监控统计拦截的filters -->
  24.      <propertyname="filters"value="stat"/>
  25. </bean>
通常来说,只需要修改initialSize、minIdle、maxActive。
如果用Oracle,则把poolPreparedStatements配置为true,mysql可以配置为false。分库分表较多的数据库,建议配置为false。

连接池监控

在web.xml中加入以下配置:
  1. <!-- Druid连接池监控 -->
  2. <servlet>  
  3.    <servlet-name>DruidStatView</servlet-name>  
  4.    <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
  5. </servlet>  
  6. <servlet-mapping>  
  7.    <servlet-name>DruidStatView</servlet-name>  
  8.    <url-pattern>/druid/*</url-pattern>  
  9. </servlet-mapping>  
  10. <filter>
  11.    <filter-name>DruidWebStatFilter</filter-name>
  12.    <filter-class>com.alibaba.druid.support.http.WebStatFilter</filter-class>
  13.    <init-param>
  14.        <param-name>exclusions</param-name>
  15.        <param-value>*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*</param-value>
  16.    </init-param>
  17. </filter>
  18. <filter-mapping>
  19.    <filter-name>DruidWebStatFilter</filter-name>
  20.    <url-pattern>/*</url-pattern>
  21. </filter-mapping>

非常强大的监控页面!

Druid-目前最好的连接池


    本站所有文章均来自互联网,如有侵权,请联系站长删除。极客文库 » Druid-目前最好的连接池
    分享到:
    赞(0)

    评论抢沙发

    评论前必须登录!