druid替换c3p0

1.pom.xml


<!-- 连接池,阿里德鲁伊 --> 

<dependency>

     <groupId>com.alibaba</groupId>

     <artifactId>druid</artifactId>

     <version>1.1.22</version>

</dependency>

<!-- SpringBoot整合Druid -->

<dependency>

      <groupId>com.alibaba</groupId>

      <artifactId>druid-spring-boot-starter</artifactId>

      <version>1.1.22</version>

</dependency>

2.spring-dao.xml

<?xml version="1.0" encoding="UTF-8"?>

<!-- 定义命名空间,避免命名冲突 -->

<beans xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"

xsi:schemaLocation="http://www.springframework.org/schema/beans

    http://www.springframework.org/schema/beans/spring-beans.xsd

    http://www.springframework.org/schema/context

    http://www.springframework.org/schema/context/spring-context.xsd">

<!-- 配置整合mybatis过程 -->

<!-- 1.配置数据库相关参数properties的属性:${url} -->

<context:property-placeholder location="classpath:jdbc.properties"/>

<!-- 2.数据库连接池 -->

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">  

    <!-- 数据库基本信息配置 -->

    <property name="url" value="${url}" /> 

    <property name="username" value="${user}" /> 

    <property name="password" value="${password}" /> 

<property name="driverClassName" value="${driverClassName}" />

<property name="filters" value="${filters}" />

<!-- 最大并发连接数 -->

<property name="maxActive" value="${maxActive}" />

<!-- 初始化连接数量 -->

<property name="initialSize" value="${initialSize}" />

<!-- 最小空闲连接数 -->

<property name="minIdle" value="${minIdle}" />

<!-- 配置获取连接等待超时的时间 -->

<property name="maxWait" value="${maxWait}" />

<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->

<property name="timeBetweenEvictionRunsMillis" value="${timeBetweenEvictionRunsMillis}" />

<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->

<property name="minEvictableIdleTimeMillis" value="${minEvictableIdleTimeMillis}" />

<property name="validationQuery" value="${validationQuery}" />

<property name="testWhileIdle" value="${testWhileIdle}" />

<property name="testOnBorrow" value="${testOnBorrow}" />

<property name="testOnReturn" value="${testOnReturn}" />

<property name="maxOpenPreparedStatements" value="${maxOpenPreparedStatements}" />

<!-- 打开removeAbandoned功能 -->

<property name="removeAbandoned" value="${removeAbandoned}" />

<!-- 1800秒,也就是30分钟 -->

<property name="removeAbandonedTimeout" value="${removeAbandonedTimeout}" />

<!-- 关闭abanded连接时输出错误日志 -->

<property name="logAbandoned" value="${logAbandoned}" />  

</bean>

<!-- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">

  配置连接池属性

  <property name="driverClass" value="${jdbc.driver}"/>

  <property name="jdbcUrl" value="${jdbc.url}"/>

  <property name="user" value="${jdbc.username}"/>

  <property name="password" value="${jdbc.password}"/>

c3p0连接池的私有属性

<property name="maxPoolSize" value="1000" />

<property name="minPoolSize" value="10" />

<property name="initialPoolSize" value="10"/>

关闭连接后不自动commit

<property name="autoCommitOnClose" value="false" />

获取连接超时时间

<property name="checkoutTimeout" value="1000" />

当获取连接失败重试次数

<property name="acquireRetryAttempts" value="3" />

</bean> -->

<!-- 3.配置SqlSessionFactory对象 -->

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<!-- 注入数据库连接池 -->

<property name="dataSource" ref="dataSource" />

<!-- 配置MyBaties全局配置文件:mybatis-config.xml -->

<property name="configLocation" value="classpath:mybatis-config.xml" />

<!-- 扫描entity包 使用别名 -->

<property name="typeAliasesPackage" value="com.lzgs.entity" />

<!-- 扫描sql配置文件:mapper需要的xml文件 -->

<property name="mapperLocations" value="classpath:mapper/*.xml" />

</bean>

<!-- 4.配置扫描Dao接口包,动态实现Dao接口,注入到spring容器中 -->

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

<!-- 注入sqlSessionFactory -->

<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />

<!-- 给出需要扫描Dao接口包 -->

<property name="basePackage" value="com.lzgs.yh.dao" />

</bean>

</beans>

3.jdbc.properties

url=jdbc:mysql://****:3306/yh?useUnicode=true&useSSL=false&autoReconnect=true&characterEncoding=utf8&serverTimezone=GMT%2b8

user=***

password=***

driverClassName=com.mysql.jdbc.Driver

filters=stat

maxActive=20

initialSize=1

maxWait=60000

minIdle=10

maxIdle=15

timeBetweenEvictionRunsMillis=60000

minEvictableIdleTimeMillis=300000

validationQuery=SELECT 'x'

testWhileIdle=true

testOnBorrow=false

testOnReturn=false

maxOpenPreparedStatements=20

removeAbandoned=true

removeAbandonedTimeout=1800

logAbandoned=true

4.web.xml

<!-- 连接池配置 -->

 <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> 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值