美文网首页
springBoot项目引入连接池

springBoot项目引入连接池

作者: 早点起床晒太阳 | 来源:发表于2020-07-16 17:25 被阅读0次

    1、前言

    springboot 2.X依赖默认支持的连接池是hiwari连接池,我们在启动springboot项目的时候也可以发现这个

    2020-06-09 14:33:42.942 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
    2020-06-09 14:33:43.156 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
    

    2、pom依赖

    在pom文件中直接依赖官方提供的spring-boot-start-jdbc模块或者spring-boot-start-data-jpa模块。

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>
    

    或者

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    

    3、配置

    我们可以在数据库中配置数据库连接属性和连接池属性

    #数据源1
    spring.datasource.url=jdbc:mysql://localhost:3306/ceshi?useUnicode=true&characterEncoding=utf-8&useSSL=false
    spring.datasource.username=root
    spring.datasource.password=root
    spring.datasource.driverClassName=com.mysql.jdbc.Driver
    ## Hikari连接池的设置
    #最小连接
    spring.datasource.hikari.minimum-idle=5
    #最大连接
    spring.datasource.hikari.maximum-pool-size=15
    #自动提交
    spring.datasource.hikari.auto-commit=true
    #最大空闲时常
    spring.datasource.hikari.idle-timeout=30000
    #连接池名
    spring.datasource.hikari.pool-name=DatebookHikariCP
    #最大生命周期
    spring.datasource.hikari.max-lifetime=900000
    #连接超时时间
    spring.datasource.hikari.connection-timeout=15000
    #心跳检测
    spring.datasource.hikari.connection-test-query=SELECT 1
    

    4、测试

    然后自己写一个测试样例测试

    @Controller
    public class JdbcController {
    
        @Autowired
        private DataSource dataSource;
    
        @ResponseBody
        @RequestMapping("/testHikari")
        public String test() {
    
            Connection connection=null;
            try {
                connection = dataSource.getConnection();
                ResultSet resultSet = connection.prepareStatement("select count(*) from products").executeQuery();
                String str="";
                while (resultSet.next()){
                    str = resultSet.getString(1);
                }
                connection.close();
                return str;
            } catch (SQLException e) {
            }
    
            return "";
        }
    
    

    发现都能成功的

    相关文章

      网友评论

          本文标题:springBoot项目引入连接池

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