案例:
用的mysql数据库,设置了主键自增
ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT
贴图
问题:
然后在java中使用example的insertSelective(XXX xxx)方法报Duplicate entry '950' for key 'PRIMARY'错误,实体类中主键的属性为
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
解决办法:
把主键改为String类型,并在库中改为VARCHAR(64)并且把实体类改为
@Id
@KeySql(genId = GetPrimaryKeyId.class)
private String id;
这样再插入就没有问题了。目前没有好的解决办法,如果欢迎留言,谢谢。