检测连接数据库的配置是否正确
调用getConnection()时会连接数据库,可以用来判断配置的连接信息是否正确。测试代码可以这么写
@AutowiredDataSource dataSource; @Test void getConnection() throws Throwable { dataSource.getConnection(); }
当配置的spring.datasource.url的值的格式有误时,会出现错误:
Caused by: java.lang.IllegalArgumentException: URL must start with jdbc
当配置的spring.datasource.url中的主机名部分有误时,会出现错误:
Caused by: java.net.UnknownHostException: localhast
当配置的spring.datasource.url中的端口号部分有误时,会出现错误:
Caused by: java.net.ConnectException: Connection refused: connect
当配置的spring.datasource.url中的serverTimezone参数值有误时,会出现错误:
Caused by: java.time.zone.ZoneRulesException: Unknown time-zone ID: Asia/ShangHai
当配置的spring.datasource.username的值有误时,会出现错误:
java.sql.SQLException: Access denied for user root123@localhost (using password: YES)
当配置的spring.datasource.password的值有误时,会出现错误:
java.sql.SQLException: Access denied for user root@localhost (using password: YES) java.sql.SQLException: Access denied for user root@localhost (using password: NO)
注意:
-
关于连接数据库的配置,各属性名是预定义的,如果属性名写错,相当于是没有配置此属性 配置的值,不要有多余的空格,这些空格也会被当作值的一部分