案例:
用的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;
這樣再插入就沒有問題了。目前沒有好的解決辦法,如果歡迎留言,謝謝。