Mybatis-Puls主鍵策略

(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
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容