ssm 数据库连接池配置

1、工程引入druid-1.1.2.jar包
2、修改spring-common.xml文件

    <!-- 1. 数据源 : DruidDataSource-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
        <property name="driverClassName" value="com.mysql.jdbc.Driver" />
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/数据库名称?useUnicode=true&amp;characterEncoding=utf-8&amp;zeroDateTimeBehavior=convertToNull" />
        <property name="username" value="帐号" />
        <property name="password" value="密码" />
        
        <!-- 属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有: 
            监控统计用的filter:stat日志用的filter:log4j防御sql注入的filter:wall -->
        <property name="filters" value="stat"/>
        <!-- 最大连接池数量 -->
        <property name="maxActive" value="100"/>
        <!-- 初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时 -->
        <property name="initialSize" value="1"/>
        <!-- 获取连接时最大等待时间,单位毫秒。配置了maxWait之后,
            缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock属性为true使用非公平锁。 -->
        <property name="maxWait" value="60000"/>
        <!-- 最小连接池数量 -->
        <property name="minIdle" value="1"/>

        <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
        <property name="timeBetweenEvictionRunsMillis" value="60000"/>
        <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
        <property name="minEvictableIdleTimeMillis" value="300000"/>

        <!-- 用来检测连接是否有效的sql,要求是一个查询语句。
            如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会其作用。 -->
        <property name="validationQuery" value="SELECT 'x'"/>
        <!-- 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,
            如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效 -->
        <property name="testWhileIdle" value="true"/>
        <!-- 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能 -->
        <property name="testOnBorrow" value="false"/>
        <!-- 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能 -->
        <property name="testOnReturn" value="false"/>
    </bean>
原文地址:https://www.cnblogs.com/jronny/p/7504798.html