Mybaits Plus 使用saveorUpdateBatch 的注意事项,实现自增id且可手动输入id的方式

1、使用Mybaits Plus 主键策略

    IdType = auto

2、预期

  主键策略:

    指定数据的id,数据库中不存在按照指定id插入,如果没有给id,则使用数据库自增

3、结果

    没有使用已经有的id,也没有使用数据库自增,生成了长度为19为的long类型id

    

4、分析

  

     源码显示,如果id为空,或者通过id差不多数据,则插入数据,且生成的sql不包含id字段

 

  配置中没有指定主键生成,使用了默认生成器导致的

5、解决方法:

    如果是批处理要达到预期,则可将主键生成策略改为:

        @TableId(type = IdType.INPUT)

  

原文地址:https://www.cnblogs.com/irobotzz/p/14341194.html