SpringBoot使用Druid数据源的配置方法

yizhihongxing

下面我将为大家详细讲解使用Spring Boot配置Druid数据源的方法。

1. 引入Druid和JDBC驱动

首先,我们需要在maven中引入druid和JDBC驱动的相关依赖,可以根据实际需求进行版本选择。在pom.xml文件中添加以下依赖:

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.2.1</version>
</dependency>

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.22</version>
</dependency>

2. 在application.properties中配置Druid数据源

接下来,在Spring Boot的配置文件application.properties中配置Druid数据源,包括用户名、密码、url等信息。在配置文件中添加以下配置:

# DRUID 配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.username=root
spring.datasource.password=
spring.datasource.url=jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC

# Druid 监控配置
spring.datasource.druid.initial-size=5
spring.datasource.druid.min-idle=5
spring.datasource.druid.max-active=20
spring.datasource.druid.test-on-borrow=true
spring.datasource.druid.stat-view-servlet.allow=true
spring.datasource.druid.stat-view-servlet.login-username=admin
spring.datasource.druid.stat-view-servlet.login-password=123456
spring.datasource.druid.filter.stat.log-slow-sql=true
spring.datasource.druid.filter.stat.slow-sql-millis=2000

3. 在代码中使用Druid数据源

经过前两步的操作,我们已经成功地配置好了Druid数据源,接下来就可以在代码中使用了。具体的使用方法是,在需要使用的类中注入DataSource,并使用JDBC连接进行查询等操作。以下是使用JdbcTemplate进行查询的示例代码:

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    @Override
    public List<User> getUserList() {
        String sql = "SELECT * FROM user";
        List<User> userList = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(User.class));
        return userList;
    }
}

还可以通过DruidDataSource获取连接池信息等相关数据,以下是一个获取池状态信息的示例代码:

@Autowired
private DataSource dataSource;

public void printPoolStatus() {
    DruidDataSource druidDataSource = (DruidDataSource) dataSource;
    System.out.println("当前活跃连接数:" + druidDataSource.getActiveCount());
    System.out.println("当前连接数:" + druidDataSource.getPoolingCount());
    System.out.println("当前没有被任何线程使用的连接数:" + druidDataSource.getEmptyCount());
    System.out.println("当前等待获取连接的线程数:" + druidDataSource.getWaitThreadCount());
    System.out.println("当前连接最长使用时间(单位s):" + druidDataSource.getMaxEvictableIdleTimeMillis() / 1000);
}

以上就是使用Spring Boot配置Druid数据源的详细攻略,希望能够对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot使用Druid数据源的配置方法 - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • 字体模糊怎么调节 解决电脑字体模糊的方法大全详细图解

    字体模糊怎么调节?解决电脑字体模糊的方法大全详细图解 当我们使用电脑时,可能会发现在某些情况下,屏幕上显示的字体会出现模糊的情况,这不仅会影响用户的体验,还会降低使用的效率。因此,如何调节字体模糊并解决电脑字体模糊的问题,成为了我们使用电脑时必须掌握的技巧之一。 常见情况分析 首先,我们需要了解一下造成字体模糊的情况有哪些: 1. 分辨率问题 如果我们将电脑…

    other 2023年6月26日
    00
  • iconmoon

    以下是关于IconMoon的完整攻略: IconMoon简介 IconMoon是一个用于创建和管理自定义图标的工具,它提供了一个易于使用的界面和多种导出选项。IconMoon支持多种图标格式,包括SVG、PNG、字体等。 使用IconMoon 以下是使用IconMoon的步骤: 访问IconMoon网站:https://icomoon.io/ 点击“Impo…

    other 2023年5月6日
    00
  • Qt基于QScrollArea实现界面嵌套移动

    Qt基于QScrollArea实现界面嵌套移动攻略 1. 简介 QScrollArea是Qt中的一个小部件,用于在一个可滚动的视图中显示另一个小部件。通过使用QScrollArea,我们可以实现界面的嵌套移动效果,即在一个小部件内部滚动另一个小部件。 2. 实现步骤 下面是实现界面嵌套移动的步骤: 步骤1:创建主窗口 首先,我们需要创建一个主窗口,用于容纳所…

    other 2023年7月28日
    00
  • C++实现添加桌面右键新建菜单

    请看下面的“C++实现添加桌面右键新建菜单”的完整攻略。 一、方案概述 添加桌面右键新建菜单主要通过在注册表中添加相应键值来实现。当用户在桌面右键点击新建时,系统就会在注册表中找到相应的键值,展示出新增的菜单。 二、实现步骤 1. 创建注册表键值 我们需要在如下路径创建一个KEY,用于存放新增的菜单项的信息: HKEY_CLASSES_ROOT\Direct…

    other 2023年6月27日
    00
  • javascript Array对象基础知识小结

    Javascript Array对象基础知识小结 Array是Javascript中重要的内置对象之一。它被用于存储一系列的数据元素。在本篇文章中,我们会详细探讨Array对象的基本知识。 创建数组 在Javascript中,你可以通过两种方式来创建一个数组。一种是使用Array构造函数,另外一种是使用数组字面量。 下面的代码演示了如何通过Array构造函数…

    other 2023年6月25日
    00
  • Android自定义控件之自定义属性(二)

    Android自定义控件之自定义属性(二)主要涉及到在自定义控件中自定义属性的使用方法,其完整攻略如下: 1. 前言 在Android中,自定义View是非常常见的需求,而自定义控件之一的自定义属性,也是比较重要的一部分,通过自定义属性,我们可以方便地在XML文件中设置控件的属性,这样可以大大提高我们的开发效率。在之前的博客中,我们已经学习了如何自定义属性,…

    other 2023年6月25日
    00
  • Xp系统打不开QQ提示没有找到SSOCommon.DLL解决方案

    针对“Xp系统打不开QQ提示没有找到SSOCommon.DLL解决方案”的问题,我做以下回答。 问题描述 当使用XP操作系统登录QQ时,可能会出现“没有找到SSOCommon.DLL”的错误提示,导致QQ无法打开。 解决方案 出现这种问题的主要原因是SSOCommon.dll文件缺失或已损坏,因此需要重新下载安装SSOCommon.dll文件。 步骤1:下载…

    other 2023年6月26日
    00
  • 图片懒加载imgLazyLoading.js使用详解

    图片懒加载imgLazyLoading.js使用详解 什么是图片懒加载? 图片懒加载是指在页面滚动的时候,只加载可视区域内的图片,而不去加载整个页面中的图片,从而提高网页的加载速度和性能。 imgLazyLoading.js的使用方法 引入imgLazyLoading.js文件 将imgLazyLoading.js文件下载并放置于项目中,然后在页面中引入该文…

    other 2023年6月25日
    00
合作推广
合作推广
分享本页
返回顶部