(1)ID_WORKER
MyBatis-Plus默認(rèn)的主鍵策略是:ID_WORKER 全局唯一ID(使用雪花算法)
參考資料:分布式系統(tǒng)唯一ID生成方案匯總:https://www.cnblogs.com/haoxinyue/p/5208136.html
(2)自增策略
要想主鍵自增需要配置如下主鍵策略
需要在創(chuàng)建數(shù)據(jù)表的時(shí)候設(shè)置主鍵自增
實(shí)體字段中配置 @TableId(type = IdType.AUTO)
@TableId(type = IdType.AUTO)
private Long id;
要想影響所有實(shí)體的配置票髓,可以設(shè)置全局主鍵配置:
#全局設(shè)置主鍵生成策略
mybatis-plus.global-config.db-config.id-type=auto
其它主鍵策略:分析 IdType 源碼可知
@Getter
public enum IdType {
/**
* 數(shù)據(jù)庫(kù)ID自增
*/
AUTO(0),
/**
* 該類(lèi)型為未設(shè)置主鍵類(lèi)型
*/
NONE(1),
/**
* 用戶(hù)輸入ID
* 該類(lèi)型可以通過(guò)自己注冊(cè)自動(dòng)填充插件進(jìn)行填充
*/
INPUT(2),
/* 以下3種類(lèi)型、只有當(dāng)插入對(duì)象ID 為空贿堰,才自動(dòng)填充减噪。 */
/**
* 全局唯一ID (idWorker)
*/
ID_WORKER(3),
/**
* 全局唯一ID (UUID)
*/
UUID(4),
/**
* 字符串全局唯一ID (idWorker 的字符串表示)
*/
ID_WORKER_STR(5);
private int key;
IdType(int key) {
this.key = key;
}
}
主鍵策略
(3)
官網(wǎng)資料:https://mp.baomidou.com/guide/annotation.html#tableid
#@TableId
tableid.png
#IdType
IdType.png