目录
- SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)
- 打印结果
- 需要注意
- springboot的HikariDataSource默认配置的默认值如下
SpringBoot2.0.3打印默认数据源为 HikariDataSource (null)
刚刚开始以为DataSource是空对象,后来打印了下面的语句,才知道DataSource不是空的,我砸,我就好奇为什么 打印出HikariDataSource (null) 这样的语句,真的坑。
@Autowired DataSource dataSource; @Autowired DataSourceProperties dataSourceProperties; @Test public void contextLoads() throws SQLException { System.out.println(String.format("数据源配置类:用户名:%s," +"密码:%s,资源定位符:%s,驱动:%s" ,dataSourceProperties.getUsername(), dataSourceProperties.getPassword(), dataSourceProperties.getUrl(), dataSourceProperties.getDriverClassName())); System.out.println(dataSource == null);//结果为:false System.out.println("得到的数据源:"+dataSource); System.out.println("得到的连接:"+dataSource.getConnection()); }
打印结果
得到的数据源:HikariDataSource (null) 2020-09-08 00:16:53.612 INFO 13316 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... Tue Sep 08 00:16:53 CST 2020 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification. 2020-09-08 00:16:54.330 INFO 13316 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
得到的连接:HikariProxyConnection@722513129 wrapping com.mysql.jdbc.JDBC4Connection@52169758 2020-09-08 00:16:54.335 INFO 13316 --- [ Thread-2] o.s.w.c.s.GenericWebApplicationContext : Closing org.springframework.web.context.support.GenericWebApplicationContext@5b799640: startup date [Tue Sep 08 00:16:51 CST 2020]; root of context hierarchy 2020-09-08 00:16:54.337 INFO 13316 --- [ Thread-2] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2020-09-08 00:16:54.339 INFO 13316 --- [ Thread-2] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.
需要注意
SpringBoot2.0.3使用的Driver是com.mysql.jdbc.Driver
springboot的HikariDataSource默认配置的默认值如下
validation-query配置数据库时,属性validationQuery默认值为“select 1”,对于oracle值应为“select 1 from dual”
validationQuery属性:用来验证数据库连接的语句,这个语句至少是返回一条数据的查询语句。每种数据库都有自己的验证语句。
以下是不同数据库对应的验证语句:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持自由互联。