springboot 配置DRUID数据源的方法实例分析

SpringBoot配置Druid数据源的方法实例分析

在SpringBoot中,我们可以使用Druid数据源连接数据库,本文将详细讲解如何在SpringBoot中配置Druid数据源的方法。

引入Druid依赖

在pom.xml文件中,添加Druid依赖:

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

application.properties配置

在application.properties中添加如下配置项:

# 数据源配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=root

# Druid数据源配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.filters=stat,wall,logback
spring.datasource.validation-query=SELECT 'x'
spring.datasource.maxActive=20
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxWait=60000
spring.datasource.timeBetweenEvictionRunsMillis=60000
spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000

示例1:使用JdbcTemplate连接数据库

在代码中,我们可以通过JdbcTemplate来连接Druid数据源。

@Configuration
public class DataSourceConfig {

    @Bean(name = "dataSource")
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource dataSource() {
        return DruidDataSourceBuilder.create().build();
    }

    @Bean(name = "jdbcTemplate")
    public JdbcTemplate jdbcTemplate(@Qualifier("dataSource") DataSource dataSource) {
        return new JdbcTemplate(dataSource);
    }

}

注:需要使用@Configuration和@Bean注解将DruidDataSource加入到Spring中。

示例2:在MyBatis中使用Druid数据源

在MyBatis中使用Druid数据源,需要配置SqlSessionFactory和TransactionManager。

@Configuration
@MapperScan("com.example.demo.mapper")
public class DataSourceConfig {

    @Bean(name = "dataSource")
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource dataSource() {
        return DruidDataSourceBuilder.create().build();
    }

    @Bean(name = "sqlSessionFactory")
    public SqlSessionFactory sqlSessionFactory(@Qualifier("dataSource") DataSource dataSource)
            throws Exception {
        SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource);
        return sessionFactory.getObject();
    }

    @Bean(name = "transactionManager")
    public DataSourceTransactionManager transactionManager(@Qualifier("dataSource") DataSource dataSource) {
        return new DataSourceTransactionManager(dataSource);
    }
}

注:需要使用@Configuration和@Bean注解将DruidDataSource相关的实例加入到Spring中,并使用@MapperScan注解指定Mapper接口所在的包。

至此,我们在SpringBoot中成功配置了Druid数据源。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:springboot 配置DRUID数据源的方法实例分析 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Java spring mvc请求详情介绍

    Java Spring MVC是一个基于Java的web框架,它可以帮助我们快速的开发web应用程序。在Java Spring MVC中,处理请求的过程分为几个步骤,包括请求的映射、数据绑定、参数验证、业务逻辑处理、响应的渲染等等。 请求的映射 在Spring MVC中,每个请求都有一个对应的处理方法,这个处理方法就是通过@RequestMapping注解来…

    Java 2023年5月16日
    00
  • java开发CPU流水线与指令乱序执行详解

    Java开发CPU流水线与指令乱序执行详解 一、流水线 CPU流水线可以看做是一个包含若干个处理单元的管道。每个处理单元都负责处理某一部分的指令。在流水线工作时,每个指令在依次经过不同的处理单元,每个处理单元都对指令做出部分处理,最终合起来完成指令的执行。由于每个处理单元都是独立的,它们可以并行处理不同的指令,这样就可以避免CPU空转,提高CPU的利用率。 …

    Java 2023年5月26日
    00
  • JavaScript实现带播放列表的音乐播放器实例分享

    JavaScript实现带播放列表的音乐播放器实例分享 介绍 本教程将详细讲解如何使用JavaScript实现带播放列表的音乐播放器。具体来说,我们将创建一个音乐播放器,使用户能够播放不同的歌曲,并在一个列表中浏览所有可用的曲目。 HTML模板 为了创建这个音乐播放器,我们将需要一个HTML模板。以下是一个基本的模板,它包含了必要的元素,如音频控件、播放/暂…

    Java 2023年6月15日
    00
  • Java8深入学习之熟透Optional

    Java8深入学习之熟透Optional Java8引入了Optional类型,用于解决空指针异常问题。本文将深入讲解Optional的使用,并提供完整攻略,以帮助读者更好地使用和理解Optional。 什么是Optional? Optional是Java8引入的一个容器(Container)对象,用于处理空指针异常。它可以包含一个非null的对象,也可以为…

    Java 2023年5月26日
    00
  • Java获取一维数组的最小值实现方法

    当需要获取一维数组中最小值时,Java提供了多种实现方法,本文将对这些方法进行详细讲解。 方法一:使用for循环进行遍历 此方法是最基本的实现方式,在遍历整个数组的过程中,用一个临时变量记录最小值,并不断更新该变量,最终得到整个数组中的最小值。 示例代码: public int getMinValue(int[] arr) { int min = arr[0…

    Java 2023年5月26日
    00
  • Spring MVC全局异常处理和单元测试_动力节点Java学院整理

    Spring MVC是一种流行的Java Web框架,其拥有全局异常处理机制,可以在程序抛出异常后,统一处理并返回指定的错误信息。本篇攻略主要包含两部分内容,分别是Spring MVC全局异常处理和单元测试。 一、Spring MVC全局异常处理 1.1 在Spring配置文件中配置异常处理拦截器 在Spring的配置文件中,可以配置一个全局的异常处理拦截器…

    Java 2023年6月15日
    00
  • 黑客如何利用文件包含漏洞进行网站入侵

    黑客通过利用文件包含漏洞,可以轻松地将自己的代码注入到网站服务器中,从而实现对网站的入侵。下面是黑客会使用的一些攻击方法和技术: 使用文件包含漏洞的攻击方法 抓取页面源代码 黑客可以访问页面的URL,并使用一些指定的参数来获取页面的源代码。一旦黑客获取了页面的源代码,就可以查看其中是否存在文件包含漏洞。 判断漏洞类型 黑客可以通过分析页面源代码,判断该漏洞是…

    Java 2023年6月15日
    00
  • 解决jmap命令打印JVM堆信息异常的问题

    以下是解决 “jmap命令打印JVM堆信息异常的问题” 的攻略: 问题描述 当我们使用 jmap 命令打印JVM堆信息时,可能会遇到如下异常: Error attaching to process: sun.jvm.hotspot.debugger.DebuggerException: Can’t attach to the process: ptrace(…

    Java 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部