• 012 druid数据源


    一 . 概述

      我们首先在springboot之中配置一个数据源.


    二 . 数据源的配置

      在springboot之中,配置一个数据源变得十分的简单了.我们只需要使用application.properties文件就可以了.

    spring.datasource.password=trek
    spring.datasource.username=root
    spring.datasource.url=jdbc:mysql://localhost:3306/springboot
    spring.datasource.driver-class-name=com.mysql.jdbc.Driver

    我们只要在配置文件之中配置了上述的内容,同时我们引入了相关的启动器,我们的数据源就会自动的进行配置.

    启动器如下:  

    <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-jdbc</artifactId>
            </dependency>
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>

    我们使用的是mysql数据库.


     三 .配置Druid数据源

      我们在一般情况下都不会使用springboot默认给出的数据源,一般情况下我们都会使用Druid来完成.

      Druid最为优秀的就是拥有一整套监控组件.

    首先我们需要导入Druid的jar文件.

            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>1.1.0</version>
            </dependency>

    本次我们使用的版本是1.1.0这个版本,原因就是本人喜欢使用整数样的版本.呵呵.

    下面我们需要的就是进行Druid的配置.

    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

    我们只需要在上面的配置信息之中指定我们需要使用的type是Druid就可以了.

    现在出现了一个问题,就是Druid数据源之中有很多的配置信息,我们使用什么样的手段才能对这些属性进行配置呢?  

    spring.datasource.initialSize=5    
    spring.datasource.minIdle=5    
    spring.datasource.maxActive=20    
    spring.datasource.maxWait=60000    
    spring.datasource.timeBetweenEvictionRunsMillis=60000    
    spring.datasource.minEvictableIdleTimeMillis=300000    
    spring.datasource.validationQuery=SELECT 1 FROM DUAL    
    spring.datasource.testWhileIdle=true    
    spring.datasource.testOnBorrow=false    
    spring.datasource.testOnReturn=false    
    spring.datasource.poolPreparedStatements=true    
    spring.datasource.maxPoolPreparedStatementPerConnectionSize=20    
    spring.datasource.filters=stat,wall,log4j    
    spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000

    我们还是在application.properties文件之中配置上述的信息:

      细心的人会发现这些配置信息根本就不是springboot标准配置信息的一部分.

    下面我们就可以使用一个注解帮助我们完成.@ConfigurationProperties来帮助我们完成.

    下面简单的演示一下:  

    @Configuration
    public class DataSourceConfig {
    
        @Bean
        @ConfigurationProperties("spring.datasource")
        public DataSource druid() {
            return new DruidDataSource();
        }
    }

    我们就是在一般的Bean的配置之上加上了一个注解,这个注解会帮助我们将配置文件之中的一些配置信息自动的填充到Bean的属性之上.

  • 相关阅读:
    vue3.0 sync属性变化
    webRTC技术
    Vue3不支持eventBus
    远程连接MySQL数据库报错:is not allowed to connect to this MYSQL server的解决办法
    基于node.js实现前端web项目自动化部署
    SH 远程连接 Windows 服务器
    七牛云使用之配置域名CNAME
    基于python win32setpixel api 实现计算机图形学相关操作
    [JavaScript闭包]Javascript闭包的判别,作用和示例
    将exe程序添加到服务的命令
  • 原文地址:https://www.cnblogs.com/trekxu/p/9740177.html
Copyright © 2020-2023  润新知