SpringBoot整合Druid数据源的方法实现

 更新时间:2022年06月14日 10:56:18   作者:java奥斯卡  
Druid是阿里开发的一款开源的数据源,被很多人认为是Java语言中最好的数据库连接池,本文主要介绍了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、运行测试方法

Druid 数据源整合完成。

到此这篇关于SpringBoot整合Druid数据源的方法实现的文章就介绍到这了,更多相关SpringBoot整合Druid数据源内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java TimeoutException:服务调用超时异常的正确解决方案

    Java TimeoutException:服务调用超时异常的正确解决方案

    在现代软件开发中,服务间通信是构建分布式系统的基础,然而,网络延迟、服务负载、资源竞争等因素都可能导致服务调用超时,TimeoutException是Java中表示服务调用超时的常见异常之一,本文将探讨TimeoutException的成因及解决方案,需要的朋友可以参考下
    2024-12-12
  • springboot 整合EhCache实现单服务缓存的操作方法

    springboot 整合EhCache实现单服务缓存的操作方法

    这篇文章主要介绍了springboot 整合EhCache实现单服务缓存的操作方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • 聊聊SpringCloud和SpringCloudAlibaba的区别

    聊聊SpringCloud和SpringCloudAlibaba的区别

    这篇文章主要介绍了SpringCloud和SpringCloudAlibaba的区别,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • 解决redisTemplate向redis中插入String类型数据时出现乱码问题

    解决redisTemplate向redis中插入String类型数据时出现乱码问题

    这篇文章主要介绍了解决redisTemplate向redis中插入String类型数据时出现乱码问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • JAVA(SpringBoot)集成Jasypt进行加密、解密功能

    JAVA(SpringBoot)集成Jasypt进行加密、解密功能

    Jasypt是一个Java库,专门用于简化加密和解密操作,提供多种加密算法支持,集成到SpringBoot等框架中,通过使用Jasypt,可以有效保护配置文件中的敏感信息,如数据库密码等,避免被未授权访问,Jasypt还支持自定义加密器,提高扩展性和安全性,适用于各种需要加密保护应用场景
    2024-09-09
  • springboot跨域如何设置SameSite的实现

    springboot跨域如何设置SameSite的实现

    这篇文章主要介绍了springboot跨域如何设置SameSite的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • 详解 问题:HttpServlet cannot be resolved to a type

    详解 问题:HttpServlet cannot be resolved to a type

    这篇文章主要介绍了详解 问题:HttpServlet cannot be resolved to a type的相关资料,需要的朋友可以参考下
    2017-03-03
  • SpringCloud解决feign调用token丢失问题解决办法

    SpringCloud解决feign调用token丢失问题解决办法

    在feign调用中可能会遇到如下问题:同步调用中,token丢失,这种可以通过创建一个拦截器,将token做透传来解决,异步调用中,token丢失,这种就无法直接透传了,因为子线程并没有token,这种需要先将token从父线程传递到子线程,再进行透传
    2024-05-05
  • MyBatis图文并茂讲解注解开发多对多查询

    MyBatis图文并茂讲解注解开发多对多查询

    这篇文章主要介绍了SpringBoot中Mybatis注解多对多查询的实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Java Map双列集合使代码更高效

    Java Map双列集合使代码更高效

    这篇文章主要介绍了Java Map双列集合使用,使你的代码更高效,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12

最新评论