spark连接mysql出现java.math.BigInteger cannot be cast to java.lang.Long问题
来源:     阅读:2
易浩激活码
发布于 2025-10-19 20:37
查看主页

  在Spark连接mysql数据库进行查询数据时遇到这样一个坑

val df:DataFrame = spark.read.format("jdbc")

.option("url", "jdbc:mysql://localhost:3306/leetcode")

.option("driver", "com.mysql.jdbc.Driver")

.option("user", "root")

.option("password", "123456")

.option("dbtable", "users")

.load()

Exception in thread "main" java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long

但是检查数据库并未有BigInteger和Long类型  

之后测试连接虚拟机上的mysql是正常的

那么问题到底出目前哪儿呢如果出现以上问题,大家就应该注意了,是不是数据库版本与mysql-connector.jar包的版本不兼容造成的。本人用的是Mysql8.0.11免安装版本,虚拟机的Mysql版本为5.7.28,出现问题时的Maven依赖中jar包版本为5.1.26,更换为5.1.47后解决了该问题。希望能够协助到遇到这类问题的朋友

直接在pom.xml文件中修改版本

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.47</version>

</dependency>

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境
相关推荐
Vue中this.$router 和this.$route的了解
python计算机视觉深度学习工具3图像分类基础
2020年应用Java前沿技术打造的五大项目
在线VIP视频免费观看, 嘘这个方法我只告诉你!
WordPress 站点数据手动备份
首页
搜索
订单
购物车
我的