SpringBoot 2.7教程:SpringBoot 整合 Mysql 项目-应用数据库连接池-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot + Web 项目搭建及实践应用-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot + Web 项目搭建,异常捕获处理-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot + Mysql 项目应用-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 集成 jsp 页面开发 -2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 实现文件上传,图片上传并显示功能-2022年最新图文版本

SpringBoot 2.7教程:springboot 设置全局字符编码,解决乱码问题-2022年最新图文版

SpringBoot 2.7教程:SpringBoot mybatis 多数据源的整合方法-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 整合 RocketMQ 项目搭建-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 整合 RabbitMQ 项目搭建-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 整合 MongoDB 项目搭建-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 整合 Redisson 项目搭建-2022年最新图文版本

SpringBoot 2.7教程:SpringBoot 整合 Redis 项目搭建-2022年最新图文版本

数据库连接池介绍:

性能方面的比较:hikariCP>druid>tomcat-jdbc>dbcp>c3p0 。hikariCP的高性能得益于最大限度的避免锁竞争。

一、hikariCP

1、pom文件

 
            com.baomidou
            mybatis-plus-boot-starter
            3.4.2
        
        
        
            mysql
            mysql-connector-java
            runtime
        

        
        
            org.springframework.boot
            spring-boot-starter-jdbc
        

2、application.properties 配置文件

server:
  port:8080
spring:
  application:
    name: hikariCP
  ########-spring datasource-########
  datasource:
    #账号配置
    url: jdbc:mysql://127.0.0.1:3306/user?useUnicode=true&characterEncoding=UTF-8&useSSL=false&zeroDateTimeBehavior=convertToNull
    username: username
    password: password
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.zaxxer.hikari.HikariDataSource

    #hikari数据库连接池
    hikari:
      pool-name: HikariCP
      idle-timeout: 180000 #空闲连接存活最大时间,默认600000(10分钟)
      maximum-pool-size: 10 #连接池最大连接数,默认是10
      auto-commit: true  #此属性控制从池返回的连接的默认自动提交行为,默认值:true
      max-lifetime: 1800000 #此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
      connection-timeout: 30000 #数据库连接超时时间,默认30秒,即30000
      connection-test-query: SELECT 1
      minimum-idle: 5

3、启动

 

二、druid

1、pom文件


            org.springframework.boot
            spring-boot-starter-web
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.4.2
        
        
        
            com.alibaba
            druid-spring-boot-starter
            1.2.6
        
        
        
            mysql
            mysql-connector-java
            runtime
        

2、application.properties 配置文件

# 应用服务 WEB 访问端口
server:
  port: 8080
spring:
  # 应用名称
  application:
    name: druid
  datasource:
    # 数据源名称
    name: userDataSource
    # 数据库连接地址
    url: jdbc:mysql://mysql_host:3306/user?useUnicode=true&characterEncoding=utf-8&useSSL=false
    # 数据库用户名&密码:
    username: username
    password: password
    # 数据库驱动:
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      # 初始化时建立物理连接的个数
      initial-size: 5
      # 最大连接池数量
      max-active: 30
      # 最小连接池数量
      min-idle: 5
      # 获取连接时最大等待时间,单位毫秒
      max-wait: 60000
      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
      time-between-eviction-runs-millis: 60000
      # 连接保持空闲而不被驱逐的最小时间
      min-evictable-idle-time-millis: 300000
      # 用来检测连接是否有效的sql,要求是一个查询语句
      validation-query: SELECT 1 FROM DUAL
      # 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
      test-while-idle: true
      # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
      test-on-borrow: false
      # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
      test-on-return: false
      # 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
      pool-prepared-statements: true
      # 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。
      max-pool-prepared-statement-per-connection-size: 50
      # 配置监控统计拦截的filters,去掉后监控界面sql无法统计
      druid.filters: stat,wall
      # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
      connection-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
      # 合并多个DruidDataSource的监控数据
      use-global-data-source-stat: true

3、启动

 

你可能感兴趣的:(SpringBoot,mysql,数据库,java)