springBoot和c3p0的整合

Posted jiang_xiang_it

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springBoot和c3p0的整合相关的知识,希望对你有一定的参考价值。

首先创建c3p0的数据源类

package com.example.demo.config;


import javax.sql.DataSource;

import org.mybatis.spring.SqlSessionFactoryBean;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;

@Configuration
public class C3p0DataSourceConfig {

    @Bean(name="dataSource")
    @Qualifier(value="dataSource")//限定描述符除了能根据名字进行注入,但能进行更细粒度的控制如何选择候选者
    @Primary//用@Primary区分主数据源
    @ConfigurationProperties(prefix="c3p0")//指定配置文件中,前缀为c3p0的属性值
    public DataSource dataSource(){
        return  DataSourceBuilder.create().type(com.mchange.v2.c3p0.ComboPooledDataSource.class).build();//创建数据源
    }
    /**
    *返回sqlSessionFactory
    */
    @Bean
    public SqlSessionFactoryBean sqlSessionFactoryBean(){
        SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean();
        sqlSessionFactory.setDataSource(dataSource());
        return sqlSessionFactory;
    }
}

 

然后配置application.properties

c3p0.jdbcUrl=jdbc:mysql:///testcrm?characterEncoding=utf8
c3p0.user=root
c3p0.password=123
c3p0.driverClass=com.mysql.jdbc.Driver

 

以上是关于springBoot和c3p0的整合的主要内容,如果未能解决你的问题,请参考以下文章

spring boot整合mybatis深坑之c3p0的详细配置

springboot Thymeleaf 整合

使用RESTful风格整合springboot+mybatis

SpringBoot整合Druid

SpringBoot整合Druid

SpringBoot 整合--Druid