首页 > 文章列表 > SpringBoot怎么整合Druid数据源

SpringBoot怎么整合Druid数据源

Druid springboot
304 2023-05-10

SpringBoot怎么整合Druid数据源

 SprintBoot 默认使用的是 HikariDataSource数据源,这次整合一个第三方的数据源 Druid ,它是阿里开发的一款开源的数据源,被很多人认为是Java语言中最好的数据库连接池,因为 Druid 能够提供强大的一整套监控和扩展功能。

默认情况下,sprintboot使用hikaridatasource数据源。这一次,集成了第三方数据源Druid。它是阿里巴巴开发的开源数据源,许多人认为它是Java语言中最好的数据库连接池,因为Druid可以提供一组强大的监控和扩展功能。

1、在创建SpringBoot项目的时候,在pom.xml maven中添加依赖:

            <dependency>

            <groupId>org.springframework.boot</groupId>

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

        </dependency>

 

        <dependency>

            <groupId>org.springframework.boot</groupId>

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

        </dependency>

 

        <dependency>

            <groupId>mysql</groupId>

            <artifactId>mysql-connector-java</artifactId>

             <version>5.1.47</version>

        </dependency>

        <dependency>

            <groupId>log4j</groupId>

            <artifactId>log4j</artifactId>

            <version>1.2.17</version>

        </dependency>

        <dependency>

            <groupId>com.alibaba</groupId>

            <artifactId>druid</artifactId>

          

        </dependency>

注意:druid 依赖 log4j 的日志jar包,但是 SpringBoot 默认使用的是 slf4j+logback,所以导入log4j的jar包即可。

2、在 application.yml(或aproperties)中添加相应的配置:

# 

server:

  port: 80

 # 数据库连接信息

spring:

  datasource:

    username: root

    password: 123456

    url: jdbc:mysql://localhost:3306/springboot?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=GMT

    driver-class-name: com.mysql.cj.jdbc.Driver # com.mysql.jdbc.Driver

#   使用 Druid 数据源

    type: com.alibaba.druid.pool.DruidDataSource

3、 log4j.properties 配置文件:

log4j.rootLogger = debug,stdout, D

log4j.appender.stdout = org.apache.log4j.ConsoleAppender

log4j.appender.stdout.Target = System.out

log4j.appender.stdout.Threshold = INFO

log4j.appender.stdout.layout = org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d %p %m%n

log4j.appender.D = org.apache.log4j.DailyRollingFileAppender

log4j.appender.D.File = ./log4j.log

log4j.appender.D.Append = true

log4j.appender.D.Threshold = DEBUG

log4j.appender.D.layout = org.apache.log4j.PatternLayout

log4j.appender.D.layout.ConversionPattern=%d %p %m%n

4、在运行测试方法,查看数据源

public class SpringbootdemoApplicationTests {

 

     @Autowired

    private JdbcTemplate jdbcTemplate;

    @Autowired

    private DataSource dataSource;

     

    @Test

    public void contextLoads() throws SQLException {

        System.out.println("dataSource==" + dataSource.getClass());

        Connection con = dataSource.getConnection();

        System.out.println("con==" + con);

         List<Map<String, Object>> maps = jdbcTemplate.queryForList("select * from user");

        System.out.println(maps);

    }

 

}

5、运行测试方法