SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)问题

下面是SpringBoot2.0.3打印默认数据源为HikariDataSource(null)问题的完整攻略。

问题描述

在使用SpringBoot2.0.3版本时,如果使用了默认的数据源,会在启动程序时输出类似于“SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)”的提示信息,其中null在不同的操作系统和环境下可能出现不同的值。这可能会让开发者感到困惑和疑惑,不知道出现这种情况的原因和解决方法。

解决方法

经过研究和测试,发现这个问题可能是由于HikariDataSource的日志输出导致的。 Spring Boot 2.x 默认的数据源使用的是HikariDataSource,所以输出信息中会涉及到HikariDataSource。

而这个 null 就代表着当前的数据库连接池对象没有被初始化或尚未加载相关的配置信息。

解决这个问题的方法有以下几种:

1. 关闭debug日志

在application.properties文件中设置日志输出级别为info,可以关闭debug日志输出,这样就不会看到类似于“HikariDataSource (null)”的提示信息了。

logging.level.root=info
logging.level.org.springframework.web=info

2. 指定正确的数据库连接配置

保证application.properties文件中指定的数据库连接信息是正确的,确保使用正确的配置启动程序。示例:

spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

示例

以下是一段在SpringBoot2.0.3中使用默认数据源时出现问题的示例:

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

运行后,会看到以下输出信息:

2018-09-16 17:26:21.417  INFO 14092 --- [           main] com.example.demo.DemoApplication         : Starting DemoApplication on KWT-PC with PID 14092 (C:\Users\kkou\IdeaProjects\demo\target\classes started by kkou in C:\Users\kkou\IdeaProjects\demo)
2018-09-16 17:26:21.420 DEBUG 14092 --- [           main] com.example.demo.DemoApplication         : Running with Spring Boot v2.0.3.RELEASE, Spring v5.0.7.RELEASE
2018-09-16 17:26:21.431  INFO 14092 --- [           main] com.example.demo.DemoApplication         : No active profile set, falling back to default profiles: default
2018-09-16 17:26:21.429 DEBUG 14092 --- [           main] .t.TomcatWebSocketTestServerContainer : Web socket server started on port: 32989
2018-09-16 17:26:21.432 DEBUG 14092 --- [           main] i.n.u.i.PlatformDependent0               : -Dio.netty.noUnsafe:true (io.netty.util.internal.PlatformDependent)
2018-09-16 17:26:21.433 DEBUG 14092 --- [           main] i.n.util.internal.NativeLibraryLoader    : Unable to load the library 'netty-tcnative-windows-x86_64', trying other loading mechanism.
2018-09-16 17:26:21.443  WARN 14092 --- [           main] .c.l.ClasspathLoggingApplicationListener : Logging environment value 'info' cannot be parsed using Logback. Logging levels will be incorrectly parsed.
2018-09-16 17:26:21.446  INFO 14092 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 1.739 seconds (JVM running for 2.262)

2018-09-16 17:26:29.450  INFO 14092 --- [extShutdownHook] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor'

其中有一行输出信息是:

2018-09-16 17:26:21.446  INFO 14092 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 1.739 seconds (JVM running for 2.262)

2018-09-16 17:26:29.450  INFO 14092 --- [extShutdownHook] o.s.s.concurrent.ThreadPoolTaskExecutor  : Shutting down ExecutorService 'applicationTaskExecutor'

可以看到没有具体的错误信息,只有HikariDataSource(null)的输出。这时可以按照上述方法进行解决。

另一个示例,可以通过指定数据库连接配置来解决这个问题。下面是一个与MySQL数据库连接的示例,配置文件的名称为application.properties:

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=myPassword
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.druid.initial-size=1
spring.datasource.druid.min-idle=1
spring.datasource.druid.max-active=10
spring.datasource.druid.filters=stat,wall,log4j

其中,我们指定了MySQL数据库的连接配置信息。这样,在启动应用程序时,就不会出现HikariDataSource(null)的输出了。

总结

通过以上方法,我们可以有效地解决SpringBoot2.0.3打印默认数据源为 HikariDataSource(null)问题。如果您遇到了类似的问题,希望以上的解决方法能够帮到您。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)问题 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 使用java写的矩阵乘法实例(Strassen算法)

    使用Java编写矩阵乘法实例 算法介绍 Strassen算法是一种快速的矩阵乘法算法,该算法的时间复杂度为O(n^log7)。相比于传统的矩阵乘法算法,在矩阵规模非常大时,Strassen算法可以显著减少计算量,提高计算效率。因此,它经常被应用于科学计算、数据分析等领域。 Strassen算法核心思想 Strassen算法的核心思想是:将一个nn的矩阵A分解…

    Java 2023年5月19日
    00
  • 如何在Android studio导入jdk9及以上版本中依赖包,如’rt.jar’,’ dt.jar’等

    1、如何获取jdk9及以上版本中依赖包,如’rt.jar’,’ dt.jar’等 ​ 在jdk9及后续版本中,jdk开始使用模块化规则,实现更好的封装和定义良好的接口,近一步加强了java的自由度,开发者可以定制化SDK ​ 包括rt.jar在内的依赖均已移除,以模块化形式更高效的存诸在 JAVA_HOME/jmods目录下 ​ 如果需要可以用命令进行抽取,…

    Java 2023年4月25日
    00
  • Java数据库连接池连接Oracle过程详解

    Java数据库连接池连接Oracle过程详解 本文将详细讲解Java数据库连接池连接Oracle的过程,包括连接池的作用、如何配置连接池、连接池连接Oracle的步骤、注意事项等。 连接池的作用 连接池是为了提高系统性能和稳定性而设计的。在Java中,使用连接池可以避免频繁地打开和关闭数据库连接,从而节省系统资源。当一个请求需要访问数据库时,连接池会从连接池…

    Java 2023年6月16日
    00
  • Hibernate+JDBC实现批量插入、更新及删除的方法详解

    Hibernate+JDBC实现批量插入、更新及删除的方法详解 本文将介绍如何使用Hibernate+JDBC实现批量插入、更新及删除数据的方法。 数据库连接 首先,我们需要在Hibernate的配置文件中配置数据库连接信息,以便在后续操作中使用: <property name="hibernate.connection.driver_cla…

    Java 2023年5月20日
    00
  • SpringMVC结合天气api实现天气查询

    下面我将针对“SpringMVC结合天气API实现天气查询”的完整攻略,进行详细讲解。 1. 准备工作 在开始之前,我们需要做以下准备工作: 注册一个高德开放平台的账号,并申请一个天气API的key。 新建一个Spring Boot项目,并在pom.xml文件中添加必要的依赖。 <dependencies> <!–Spring Boot …

    Java 2023年6月16日
    00
  • Asp.net控制Tomcat启动关闭的实现方法

    想要实现Asp.net控制Tomcat启动关闭,我们需要用到Tomcat的管理Web界面,通过向Tomcat管理Web发送HTTP请求来实现Tomcat的启动和关闭。 配置Tomcat的管理Web界面 要实现Asp.net控制Tomcat启动关闭,需要在Tomcat的conf目录下的server.xml文件中添加以下配置: <Listener clas…

    Java 2023年6月2日
    00
  • springmvc的文件保存方法详解

    下面我将详细讲解SpringMVC的文件保存方法,内容如下: 1.文件上传流程 在介绍文件保存方法之前,先来了解一下文件上传的流程,SpringMVC的文件上传流程如下: 页面提交表单(form)数据和文件数据到服务器 服务器通过SpringMVC的DispatcherServlet分发请求到Controller Controller接收到请求后,通过调用S…

    Java 2023年6月15日
    00
  • 深入学习JavaWeb中监听器(Listener)的使用方法

    关于“深入学习JavaWeb中监听器(Listener)的使用方法”的完整攻略,我将从以下几个方面进行详细讲解: 监听器简介 监听器类型及应用场景 监听器实现及使用方法 两个示例说明 监听器在实际项目中的应用案例 1. 监听器简介 监听器(Listener)是JavaWeb中的一种机制,用于监听Web应用程序中的事件,对这些事件进行响应。通过监听器,我们可以…

    Java 2023年6月15日
    00
合作推广
合作推广
分享本页
返回顶部