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;

你可能感兴趣的:(mybatis-plus学习)