Mybatis-Plus添加数据时主键报错的解决方法

添加数据时主键报错情况如下:

org.mybatis.spring.MyBatisSystemException:
 nested exception is org.apache.ibatis.reflection.ReflectionException:
 Could not set property 'id' of 'class com.zhaosong.entity.UserInfos' 
 with value '1188019363148832769'
 Cause: java.lang.IllegalArgumentException: argument type mismatch

大致就是由于自动生成了一个id1188019363148832769, 无法放入integer类型

说明:

由于mybatis-plus会自动插入一个id到实体对象, 不管你是否对id设置值都会向实体类中添加一个long类型的值, 所以有时候导致一些意外的情况发生

解决方法

一、修改数据类型

将id的类型改变成long类型,数据库改成和实体类对应的long类型。

二、添加注解的方式

如果还是想要使用数据库id自增, 就要把mybatis-plus这个id生成的功能给关掉,可以在id字段上加上如下注解即可

@TableId(type =IdType.AUTO)
	private Integer id;
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值