springBoot2.x启动项目报java.sql.SQLNonTransie…

2020-02-27 16:03:34来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

springBoot2.x启动项目报java.sql.SQLNonTransientConnectionException

springBoot1.x升级到springBoot2.x,出现默认的mysql驱动包版本的问题,需要修改jdbc驱动类和连接字符串

将项目从springBoot1.x升级到springBoot2.x,启动报错:

1 java.sql.SQLNonTransientConnectionException: Cannot load connection class because of underlying exception: com.mysql.cj.exceptions.WrongArgumentException: Malformed database URL, failed to parse the connection string near ';characterEncoding=UTF8&useSSL=true?autoReconnect=true'.
2     at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)
3     at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
4     at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
5     at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
6     at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)
7     at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:79)
8     at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:131)
9     at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:219)

看提示报错原因是mysql的jdbc连接字符串不符合要求

修改成前面文章的url:MySQL的JDBC驱动(8.0版本)

1 jdbc:mysql://{ip}:{port}/{db}?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true

 再次启动,还是报错,看到有错误提示:

1 Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

很明显是jdbc驱动包没配对,修改之,再次启动成功

 


原文链接:https://www.cnblogs.com/zhuitian/p/12373622.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:代理模式-jdk动态代理

下一篇:代理-cglib代理