Rumah >Java >javaTutorial >Mengapa Saya Mendapat \'ClassCastException: java.math.BigInteger tidak boleh dihantar ke java.lang.Long\' Apabila Menyambung ke MySQL?
"ClassCastException: java.math.BigInteger tidak boleh dihantar ke java.lang.Long" pada Sambungan MySQL
Ringkasan Ralat :
Apabila cuba menyambung ke pangkalan data MySQL, ralat berlaku disebabkan ketidakupayaan untuk menghantar contoh java.math.BigInteger ke contoh java.lang.Long.
Punca Ralat:
Java ClassCastException dilemparkan apabila percubaan dibuat untuk menghantar objek dari satu kelas ke kelas lain yang tidak berkaitan. Dalam kes ini, MySQL Connector/J secara dalaman cuba menghantar tika BigInteger (yang merupakan jenis integer yang tepat) kepada tika Long (iaitu jenis integer primitif).
Resolusi:
Isu asas nampaknya berpunca daripada ketidakpadanan versi antara pangkalan data MySQL anda dan pustaka mysql-connector.jar. Adalah disyorkan untuk mengemas kini kepada versi MySQL Connector/J yang lebih baharu, seperti 5.1.47 atau 8.0.12.
Langkah-Langkah untuk Menyelesaikan:
Dengan menaik taraf MySQL Connector/J kepada versi yang serasi, ClassCastException harus diselesaikan dan sambungan ke MySQL harus berjaya.
Atas ialah kandungan terperinci Mengapa Saya Mendapat \'ClassCastException: java.math.BigInteger tidak boleh dihantar ke java.lang.Long\' Apabila Menyambung ke MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!