mybatis plus 3 主鍵策略

2021-10-07 18:33:42 字數 1086 閱讀 2075

資料庫插入時一般都會有主鍵 id,mybatis-plus 通過註解來插入不同的主鍵 id

屬性型別

必須指定

預設值描述

value

string否「」

主鍵欄位名

type

enum

否idtype.none

主鍵型別

idtype值描述

auto

資料庫id自增,表中id欄位必須為自增

none

若有手動設定主鍵值,則使用手動設定的值,如果沒有,則使用雪花演算法生成

input

insert前自行set主鍵值

assign_id

雪花演算法分配id,主鍵型別為number或string,since 3.3.0

assign_uuid

分配uuid,主鍵型別為string,since 3.3.0

id_worker

過時,分布式全域性唯一id 長整型型別(please use assign_id)

uuid

過時,32位uuid字串(please use assign_uuid)

id_worker_str

過時,分布式全域性唯一id 字串型別(please use assign_id)

**說明:**除了手動插入指定的 id 生成策略,其他策略在**中都不需要設定實體類 id 的值,這裡只使用 auto 的策略來演示

實體類新增註解

@data

@noargsconstructor

@allargsconstructor

public

class

user

注意:當使用長主鍵時,那麼實體類成員變數 id 應該用 long 型別

測試自增策略

@test

void

test1()

檢視結果

MybatisPlus的各種支援的主鍵策略!

目錄注 本文 樣例及sql指令碼均已上傳至gitee spring boot mybatis plus學習 mybatisplus支援的主鍵策略定義在idtype中 值描述 auto 資料庫id自增 none 無狀態,該型別為未設定主鍵型別 註解裡等於跟隨全域性,全域性裡約等於 input inpu...

mybatis plus主鍵策略

mp 支援多種主鍵策略 預設是推特的 雪花演算法 也可以設定其他策略下面我演示主鍵策略使用 mp的主鍵定義在乙個乙個列舉類中 原始碼如下 package com.baomidou.mybatisplus.annotation public enum idtype public int getkey ...

Mybatis plus主鍵策略

如果有三個資料表,第乙個資料表由10000個資料,最後一段資料的id 10000,那麼第二個資料表的第乙個id 10001,以此類推,第三個資料表的id 20001 30000,那麼第二個和第三個表的首個資料id值,就需要得到上乙個表的最後乙個id值,再加1,才是本資料表的起始id值。排序不方便 假...