java.math.BigInteger cannot be cast to java.lang.Long数据库操作时异常处理(mysql)

Wesley13
• 阅读 779

java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long;

连接数据库没问题,但操作数据库时报错,可以进行一下排查:

首先,数据库表字段的类型与实体类是否一致;

如果一致就要看引用的jar版本问题。

本次遇见这种报错就是因为版本较低导致。

java.math.BigInteger cannot be cast to java.lang.Long数据库操作时异常处理(mysql)

之前用的版本是5.1.21的报错,修改为5.1.46就OK了。

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.1.1</version>
        </dependency>

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

    </dependencies>
点赞
收藏
评论区
推荐文章
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
happlyfox happlyfox
3年前
go好用的类型转换第三方组件
关于我通过学习和分享的过程,将自己工作中的问题和技术总结输出,希望菜鸟和老鸟都能通过自己的文章收获新的知识,并付诸实施。Cast介绍Cast是什么?Cast是一个库,以一致和简单的方式在不同的go类型之间转换。Cast提供了简单的函数,可以轻松地将数字转换为字符串,将接口转换为bool类型等等。当一个明显的转换是可能的时,Cast会智
happlyfox happlyfox
3年前
go好用的类型转换第三方组件 [cast]
关于我Cast介绍Cast是什么?Cast是一个库,以一致和简单的方式在不同的go类型之间转换。Cast提供了简单的函数,可以轻松地将数字转换为字符串,将接口转换为bool类型等等。当一个明显的转换是可能的时,Cast会智能地执行这一操作。它不会试图猜测你的意思,例如,你只能将一个字符串转换为int的字符串表示形式,例如“8”。Cast是为Hugo开发的
Stella981 Stella981
3年前
Django之Django模板
1、问:html页面从数据库中读出DateTimeField字段时,显示的时间格式和数据库中存放的格式不一致,比如数据库字段内容为2012082616:00:00,但是页面显示的却是Aug.26,2012,4p.m.答:为了页面和数据库中显示一致,需要在页面格式化时间,需要添加<td{{dayrecord.p\_time|date:
Wesley13 Wesley13
3年前
Java 程序读取Mysql数据库时间信息,与真实时间相差 13 小时
问题Java后台程序读取数据库时间,在前端页面进行展示的时候,出现了错误,展示的时间和数据库中的时间不一致。所用工具及其版本如下1.Mysql数据库版本:8.0.15forosx10.142.数据库里的时间类型:dateTime3.JDK版本:11.0.24.Mysql驱动:mys
Stella981 Stella981
3年前
Mybatis Plus 更新时间 creatDate字段报错 Could not set property 'creatDate'
背景   MySQL数据库,表中字段名为creatDate,类型为datetime。Java实体类中对应的变量是java.time.LocalDateTime类型的creatDate。当使用新增和更新的方法时,创建日期时间和最后更新时间自动更新。实体类_/\\__\创建日期__\/_@JsonF
Stella981 Stella981
3年前
Django连接Mysql数据库
Mysql数据库具有灵活,轻量级易操作的优势,因此我选择使用mysql作为服务器的数据库。python的Django如果要操作数据库,需要与数据库建立连接,在此之后才可以对数据库进行操作Django项目默认使用的数据库是sqlite3,首先我们需要将数据库配置更改为mysql在项目根模块的\\newpro\\settings.py中,我们可以查询
Wesley13 Wesley13
3年前
oracle小数点前零丢失的问题
1.问题起源 oracle数据库字段值为小于1的小数时,使用char类型处理,会丢失小数点前面的0 例如0.35就变成了.35 2.解决办法:(1)用to\_char函数格式化数字显示 select    to\_char(0.338,'fm9999999990.00')fromdual; 结果:0.34 
Wesley13 Wesley13
3年前
mysql存储过程造数
性能测试时,数据库表通常需要很多数据,此时我们可以用存储过程来造数,以下代码mysql、Oracle都可以用首先,先查看数据库表的设计,可以看到每张表有多少字段,分别都是什么类型,哪个字段是自动增长的等。然后根据表的结构写一个insert语句即可。其次,看哪些表涉及到性能问题,然后对这些表进行造数即可。!(https://oscimg.osc
Wesley13 Wesley13
3年前
MySql之自动同步表结构
MySql之自动同步表结构开发痛点在开发过程中,由于频繁的修改数据库的字段,导致rd和qa环境的数据库表经常不一致。而由于这些修改数据库的操作可能由多个rd操作,很难一次性收集全。人手工去和qa环境对字段又特别繁琐,容易遗漏。解决之道于是笔者就写了一个能够自动比较两个数据库的表结构,并生成