資料庫插入時一般都會有主鍵 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值。排序不方便 假...