数据库连接池

spring配置mysql连接池 springboot的数据库连接池_连接池


spring配置mysql连接池 springboot的数据库连接池_连接池_02

https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter

spring配置mysql连接池 springboot的数据库连接池_连接池_03

pom.xml 是Maven的配置 文件 为JAP、SQL 和 数据库连接池 下载包 进行配置依赖

如果配置依赖时不能识别 在setting 中 override一下 即可

spring配置mysql连接池 springboot的数据库连接池_bc_04

连接池基本的思想是在系统初始化的时候,将数据库连接作为对象存储在内存中,当用户需要访问数据库时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象。使用完毕后,用户也并非将连接关闭,而是将连接放回连接池中,以供下一个请求访问使用。而连接的建立、断开都由连接池自身来管理。同时,还可以通过设置连接池的参数来控制连接池中的初始连接数、连接的上下限数以及每个连接的最大使用次数、最大空闲时间等等。也可以通过其自身的管理机制来监视数据库连接的数量、使用情况等。 [1]

spring配置mysql连接池 springboot的数据库连接池_spring_05


下载之后 通过此处即可查看是否下载完成

2 在配置文件里面 增加配置数据源参数

spring:
jpa:
hibernate:
ddl-auto: update
show-sql: true

数据源配置(上面是配置好的JPA)

datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/demo?serverTimezone=UTC&useSSL=false
username: root
password: root123
# 数据库连接池配置
type: com.alibaba.druid.pool.DruidDataSource
druid:
initial-size: 5 #初始化建立物理连接的个数
min-idle: 5
maxActive: 20
maxWait: 60000 #获取连接时最大等待时间,单位毫秒
timeBetweenEvictionRunsMillis: 60000 #配置间隔多久才进行-次检测,检测需要关闭的空闲连接,单位是毫秒minEvictableIdleTimeMillis: 300000 #配置一个连接在池中最小生存的时间,单位是毫秒
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1 #用来检测连接是否有效的sqL
testWhileIdle: true #申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis ,执行validatitestOnBorrow: false #申请连接时执行val idationQuery检测连接是否有效,如果为true会降低性能
testOnReturn: false #归还连接时执行val idationQuery检测连接是否有效,如果为true会降低性能
test-on-borrow: false #申请链接时候检测
poolPreparedStatements: true #打开PSCache ,并且指定每个连接EPSCache的大小
maxPoolPreparedStatementPerConnectionSize: 20 #要启用PSCache,必须配置大于0,当大于0时,poolPreparefilters: stat ,wall,slf4j #配置监控统计拦截的filters,去掉后监控界面sqL无法统计,'wall '用于防火墙
filters: stat,wall,slf4j #配置监控统计拦截的filters 去掉后 监控界面的sql无法统计,'wall’用于防火墙
#通过connectProperties庙性来打开mergeSqL功能;慢SQL记录:
connectionProperties: druid.stat.mergeSq1=true;druid.stat.slowSqlMillis=5000
#配置DruidStatFilter,用于采集web- jdbc关联监控的数据
web-stat-filter:
enabled: true
url-pattern: “/"
#排除一些不必要的url过滤
exclusions: "js, gif,
.jpg,.bmp,.png,.css,.ico,/druid/"
#配置DruidStatViewServLet
stat-view-servlet:
url-pattern: "/druid/

# IP白名单(没有配置或者为空,则只能在本地访问)
allow: 127.0.0.1,192.168.31.76
# IP黑名单(存在共同时,deny优先于alLow)
deny: 192.168.1.73
#禁用HTML 页面上的“Reset ALL”功能
reset-enable: false
#可视化界面,登录名
login-username: admin
#可视化界面,登录密码
login- password: admin123456

thymrleaf配置
类似于jsp 但不需要tomcat就能看到文件长什么样
无需在yml中进行配置 默认配置就好
一般情况下,无需在yml中进行配置,采用其默认配置就很好,thymeleaf的默认配置如下:
spring.thymeleaf.cache #是否开启模板缓存,默认true
spring.thymeleaf.check-template-location #是否检查模板路径是否存在,默认true
spring.thymeleaf.content-type #指定Content-Type,默认为: text/html
spring.thymeleaf.enabled #是否允许MVC使用Thymeleaf,默认为: true
spring.thymeleaf.encoding #指定模板的编码,默认为: UTF-8
spring.thymeleaf.excluded-view-names #指定不使用模板的视图名称,多个以逗号分隔.
spring.thymeleaf.mode #指定模板的模式,具体查看StandardTemplateModeHandlers,默认为: HTML5
spring.thymeleaf.prefix #指定模板的前缀,默认为:classpath:/templates/
spring.thymeleaf.suffix #指定模板的后缀,默认为:.html
spring.thymeleaf.template-resolver-order #指定模板的解析顺序,默认为第一个.
spring.thymeleaf.view-names #指定使用模板的视图名,多个以逗号分隔.