zoukankan      html  css  js  c++  java
  • 关于springboot中数据库连接池报错:testWhileIdle is true, validationQuery not set

    这句话的意思是 空闲的时候进行检测是开启,但是没有设置验证语句,当数据库没有接收到请求时,会进行数据库连接检测,检查数据库是否还是连着的。检查数据库是否断开需要发送sql语句。报错是说这个sql语句没有设置。

    解释一下:Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。阿里 Druid为SpringBoot 提供专门的start依赖,Mybatis 使用 Druid 相对比较简单,我们需要引入 Druid 的starter 依赖并添加相关的一些配置即可。

    怎么解决呢:

    1:首先查看 pom.xml文件里面是否写对:

    <dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.1.10</version>
    </dependency>

    2:其次在application.properties配置文件中的数据源是否配置正确:
    spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver  #使用阿里巴巴druid时必须配置这一项
    spring.datasource.url=jdbc:mysql://localhost:3306/air_admin?serverTimezone=GMT%2B8&characterEncoding=utf8&useUnicode=true&useSSL=false
    spring.datasource.username=root
    spring.datasource.password=root
    spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
    spring.druid.validation-query=SELECT 1    #这里主要是空闲时验证数据库连接是否正常设置的链接语句



    一般报错主要是没有配置 spring.druid.validation-query=SELECT 1 这一项,

  • 相关阅读:
    Kth Ancestor 第k个祖先问题
    centOS 6.4挂载centOS分区
    上阶段学习总结
    code testing
    Helo~
    leetcode--Maximum Subarray
    leetcode--Climbing Stairs
    leetcode--Search Insert Position
    leetcode--Best Time to Buy and Sell Stock III
    leetcode--Best Time to Buy and Sell Stock II
  • 原文地址:https://www.cnblogs.com/songyinan/p/13273846.html
Copyright © 2011-2022 走看看