Druid数据库连接池使用

阿里巴巴推出的国产数据库连接池,据网上测试对比,比目前的DBCP或C3P0数据库连接池性能更好

可以监控连接以及执行的SQL的情况。

加入项目的具体步骤:

1、导入jar

<parent>
    <groupId>com.alibaba</groupId>
    <artifactId>parent-pom</artifactId>
    <version>1.0.0-SNAPSHOT</version>
</parent>

2、在applicationContext-resources.xml 配置数据库连接池,以mysql数据库为例<!-- druid DataSource for J2EE environments -->

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="jdbc:mysql://127.0.0.1:3306/XXX" /> <property name="username" value="root" /> <property name="password" value="root" /> <property name="maxActive" value="20" /> <property name="initialSize" value="1" /> <property name="maxWait" value="60000" /> <property name="minIdle" value="1" /> <property name="timeBetweenEvictionRunsMillis" value="3000" /> <property name="minEvictableIdleTimeMillis" value="300000" /> <property name="validationQuery" value="SELECT 'x' FROM DUAL" /> <property name="testWhileIdle" value="true" /> <property name="testOnBorrow" value="false" /> <property name="testOnReturn" value="false" /> <!-- mysql 不支持 poolPreparedStatements--> <!--<property name="poolPreparedStatements" value="true" />--> <!--<property name="maxPoolPreparedStatementPerConnectionSize" value="20" />--> <!-- 开启Druid的监控统计功能 --> <property name="filters" value="stat" /> </bean>

3、配置内置监控

<servlet>
    <servlet-name>DruidStatView</servlet-name>
    <servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>DruidStatView</servlet-name>
    <url-pattern>/druid/*</url-pattern>
</servlet-mapping>

4、通过访问druid/index.html 可以查看项目的运行情况,也可以分析SQL语句的执行情况,便于调优。

项目地址:https://github.com/alibaba/druid

目前最新版本为1.0.11

百度发现该连接池存在一些问题,开发测试环境可以使用,正式环境还是用成熟点的比较靠谱

原文地址:https://www.cnblogs.com/yangzhilong/p/4151992.html