mybatis在持久层框架中还是比较火的,一般项目都是基于ssm。虽然mybatis可以直接在xml中通过SQL语句操作数据库,很是灵活。但正其操作都要通过SQL语句进行,就必须写大量的xml文件,很是麻烦。

下面给大家介绍使用mybatis-plus的insert方法遇到的问题,具体内容如下所示:

我在添加的时候,无缘无辜的给我报

java.sql.SQLException: Field 'id' doesn't have a default value

如图:

后来了解到 使用 mybatis-plus的insert方法,在底层会默认生成一个Long类型的UUID,这就导致跟数据库里面类型不一致导致错误,我们首先要做的是要把这个默认自增的主键给禁了

在实体类 id上面加一个注解

@TableId(value = "id",type = IdType.INPUT)

private String id;

这样即可

@Data

public class JtbTransactionRecord extends Model implements Serializable{

private static final long serialVersionUID = 1L;

/**

* 交易主键

*/

@TableId(value = "id",type = IdType.INPUT)

private String id;

}

到此这篇关于使用mybatis-plus的insert方法遇到的问题及解决方法(添加时id值不存在异常)的文章就介绍到这了,更多相关mybatis-plus insert方法内容请搜索随便开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持随便开发网!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐