小码问答,有问必答!

SpringBoot使用Druid报错

Caused by: java.lang.NullPointerException

at com.mysql.jdbc.ConnectionImpl.getServerCharset(ConnectionImpl.java:3005)

at com.mysql.jdbc.MysqlIO.sendConnectionAttributes(MysqlIO.java:1916)

at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1845)

at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1215)

at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2255)

at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2286)

... 58 more


JavaEE

收藏

1个回答

我要回答

  • author
    牛叔叔 2021-01-20 13:44

    可能是由于数据库MySQL版本是8.0,项目使用的Driver还是低版本导致的。

    可以尝试修改一下pom,将mysql驱动调整为新版本。

    <dependency>
    	<groupId>mysql</groupId>
    	<artifactId>mysql-connector-java</artifactId>
    	<version>8.0.21</version>
    </dependency>


    另外也需要修改驱动类为:

    driverClassName=com.mysql.cj.jdbc.Driver


    同时需要修改连接串:

    url=jdbc:mysql://demo.wanmait.com:3306/wanmait?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Hongkong