springboot集成连接池

连接池: 

C3P0 :是一个开放源代码的 JDBC 连接池,它在 lib 目录中与 Hibernate 一起发布,包括了实现 jdbc3
jdbc2 扩展规范说明的 Connection Statement 池的 DataSources 对象。
Proxool :是一个 Java SQL Driver 驱动程序,提供了对选择的其它类型的驱动程序的连接池封装。可以
非常简单的移植到现存的代码中,完全可配置,快速、成熟、健壮。可以透明地为现存的 JDBC 驱动程序
增加连接池功能。
Jakarta DBCP DBCP 是一个依赖 Jakartacommons-pool 对象池机制的数据库连接池。 DBCP 可以直接的
在应用程序中使用。
BoneCP :是一个快速、开源的数据库连接池。帮用户管理数据连接,让应用程序能更快速地访问数据
库。比 C3P0/DBCP 连接池速度快 25 倍。
Druid Druid 不仅是一个数据库连接池,还包含一个 ProxyDriver (代理程序)、一系列内置的 JDBC
件库、一个 SQL
Parser 。支持所有 JDBC 兼容的数据库,包括 Oracle MySql Derby Postgresql SQL Server H2

一、集成连接池Druid

1、导入依赖

<dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.2.8</version> </dependency>
二、更改yml文件
server:
  port: 8080
spring:
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/mybatis_ssm?useUnicode=true&serverTimezone=Asia/Shanghai&useSSL=false&characterEncoding=utf-8
    username: root
    password: 123456
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      initial-size: 5                                       # 初始化大小
      min-idle: 10                                          # 最小连接数
      max-active: 20                                        # 最大连接数
      max-wait: 60000                                       # 获取连接时的最大等待时间
      min-evictable-idle-time-millis: 300000                # 一个连接在池中最小生存的时间,单位是毫秒
      time-between-eviction-runs-millis: 60000              # 多久才进行一次检测需要关闭的空闲连接,单位是毫秒
      filters: stat                                         # 配置扩展插件:stat-监控统计,log4j-日志,wall-防火墙(防止SQL注入),去掉后,监控界面的sql无法统计   ,wall
      validation-query: SELECT 1                            # 检测连接是否有效的 SQL语句,为空时以下三个配置均无效
      test-on-borrow: true                                  # 申请连接时执行validationQuery检测连接是否有效,默认true,开启后会降低性能
      test-on-return: true                                  # 归还连接时执行validationQuery检测连接是否有效,默认false,开启后会降低性能
      test-while-idle: true                                 # 申请连接时如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效,默认false,建议开启,不影响性能
      stat-view-servlet:
        enabled: true                                       # 是否开启 StatViewServlet
        allow: 127.0.0.1                                    # 访问监控页面 白名单,默认127.0.0.1
        deny: 192.168.56.1                                  # 访问监控页面 黑名单
        login-username: admin                               # 访问监控页面 登陆账号
        login-password: 123                                 # 访问监控页面 登陆密码
      filter:
        stat:
          enabled: true                                     # 是否开启 FilterStat,默认true
          log-slow-sql: true                                # 是否开启 慢SQL 记录,默认false
          slow-sql-millis: 5000                             # 慢 SQL 的标准,默认 3000,单位:毫秒
          merge-sql: false                                  # 合并多个连接池的监控数据,默认false
  redis:
    database: 0         #数据库索引
    host: 47.98.209.83     #主机位置
    port: 6379          #端口
    password: 123456           #密码
    jedis:
      pool:
        max-active: 8   #最大连接数
        max-wait: -1    #最大阻塞等待时间(负数表示没限制)
        max-idle: 8     #最大空闲
        min-idle: 0     #最小空闲
    timeout: 10000      #连接超时时间
logging:
  level:
    com.smy.code.mapper: debug

三、controller

studentcontroller

package com.smy.code.controller;

import com.smy.code.service.StudentService;
import com.smy.code.util.PageBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletRequest;


@RestController
@RequestMapping("/stu")
public class StudentController {

    @Autowired
    private StudentService service;

    @GetMapping("/all")
    public Object index(HttpServletRequest request){
        PageBean pageBean = new PageBean();
        pageBean.setRequest(request);
        return service.findPager(pageBean);
    }

}

http://localhost:8080/druid/sql.html

能够看到执行时长 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值