ClassCastException:java.math.BigInteger在连接MySQL时无法强制转换为java.lang.Long

前端之家收集整理的这篇文章主要介绍了ClassCastException:java.math.BigInteger在连接MySQL时无法强制转换为java.lang.Long前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

连接到MySQL时,出现错误(见下文).

单击here获取代码

我得到这个输出

run:
Now connecting to databse...

java.sql.sqlException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long
java.sql.sqlException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long
    at com.MysqL.jdbc.sqlError.createsqlException(sqlError.java:1074)
    at com.MysqL.jdbc.sqlError.createsqlException(sqlError.java:988)
    at com.MysqL.jdbc.sqlError.createsqlException(sqlError.java:974)
    at com.MysqL.jdbc.sqlError.createsqlException(sqlError.java:919)
    at com.MysqL.jdbc.ConnectionImpl.buildCollationMapping(ConnectionImpl.java:1062)
    at com.MysqL.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:3556)
    at com.MysqL.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2513)
    at com.MysqL.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2283)
    at com.MysqL.jdbc.ConnectionImpl.MysqL.jdbc.JDBC4Connection.MysqL.jdbc.Util.handleNewInstance(Util.java:411)
    at com.MysqL.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:404)
    at com.MysqL.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:317)
    at java.sql.DriverManager.getConnection(DriverManager.java:664)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at dbms_basic.Dbms_Basic.main(Dbms_Basic.java:28)
Caused by: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long
    at com.MysqL.jdbc.ConnectionImpl.buildCollationMapping(ConnectionImpl.java:1007)
    ... 15 more
BUILD SUCCESSFUL (total time: 0 seconds)

我怎么解决这个问题?

最佳答案
您的错误清楚地表明无法进行转换,因为java.math.BigInteger类实例不是java.lang.Long类的实例.

现在出现的问题是谁在什么级别进行转换,当我们要求JDBC驱动程序建立连接时,它在场景之后做了很多工作,然后才真正给我们提供了正确的连接工作对象.

您的MysqL版本与您的MysqL-connector.jar版本相结合似乎存在问题.尝试使用较新版本的MysqL Connector / J(有关最新版本,请参阅https://dev.mysql.com/downloads/connector/j/),例如,如果您使用的是旧版本,请升级到5.1.47或8.0.12.

猜你在找的MySQL相关文章