美文网首页
SpringBoot集成MyBatis2-加入连接池

SpringBoot集成MyBatis2-加入连接池

作者: 想去山上定居 | 来源:发表于2018-08-26 23:16 被阅读0次

天下的猪是一家,猪的清单

  1. 加入依赖
    • druid
  2. 配置DataSource
  3. 测试

加入依赖

compile 'com.alibaba:druid-spring-boot-starter:1.1.10'

配置DataSource

spring:
  datasource:
      druid:
          url: jdbc:mysql://localhost:3306/test
          #数据库用户名
          username: root
          #数据库密码
          password: 123456
          #数据源类型启用Druid
          db-type: com.alibaba.druid.pool.DruidDataSource
          #驱动
          driver-class-name: com.mysql.jdbc.Driver
          #属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有:
          #监控统计用的filter:stat
          #日志用的filter:log4j
          #防御sql注入的filter:wall
          filters: stat
          #最大连接池数量
          max-active: 20
          #初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时
          initial-size: 1
          #获取连接时最大等待时间,单位毫秒
          max-wait: 60000
          #最小连接池数量
          min-idle: 1
          # 在空闲时,间隔一定的时间就去访问一下数据库,避免连接池中的连接因超时而失效
          #1) 自动检测连接是否有效的间隔时间
          #2) testWhileIdle的判断依据,详细看testWhileIdle属性的说明
          time-between-eviction-runs-millis: 300000
          #连接池空闲连接的有效时间 ,设置30分钟
          min-evictable-idle-time-millis: 1800000
          #用来检测连接是否有效的sql,要求是一个查询语句。
          #如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用。
          validation-query: select 'x'
          #建议配置为true,不影响性能,并且保证安全性。
          #申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
          test-while-idle: true
          #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能
          test-on-return: false
          #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
          test-on-borrow: false
          #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大。
          #oracle 打开
          #>mysql5.5 关闭
          #<=mysql5.5 打开
          pool-prepared-statements: false
          #要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。
          #在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100
          max-open-prepared-statements: 20
          #查看监控的页面
          stat-view-servlet:
            enabled: true
            url-pattern: "/druid/*"
            login-username: admin
            login-password: admin
          #过滤不需要的页面
          web-stat-filter:
            enabled: true
            url-pattern: "/*"
            exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
          #配置监控的方式
          filter:
            stat:
              db-type: mysql
              log-slow-sql: true
              slow-sql-millis: 2000

测试

http://127.0.0.1:8080/druid/index.html

记忆

WechatIMG1182.jpeg

地点定桩

  1. 发型定制 url
  2. 你和他 username & password
  3. 左边门 driver-class-name
  4. 右边门 db-type
  5. 两条水管 max-active & initial-size
  6. 专业手机维修广告牌 filters
  7. 专业手机维修店门口 max-wait 没有,没有,走吧。我再等等
  8. 专业手机维修店logo min-idle 等不了了,走
  9. 专业手机维修店楼梯 time-between-eniction-runs-millis 别走,有空闲的了,但我先看看是否还有效
  10. 有房出租 min-evictable-idle-time-milllis 不要拉倒,丢掉
  11. 有房与九天之间的间隔 validation-query + 三个检查 test-while-idle & test-on-return & test-on-borrow
  12. 九天公寓 pool-prepared-statements & max-open-prepared-statements
  13. 窗户+空调 stat-view-servlet
  14. 阳台 web-stat-filter
  15. 甜品店 filter:stat...

相关文章

网友评论

      本文标题:SpringBoot集成MyBatis2-加入连接池

      本文链接:https://www.haomeiwen.com/subject/vrmaiftx.html