我們平時使用主鍵時會為主鍵加上自增長策略,like this
auto increment
但有時自增長策略並不能滿足我們的專案需求,那我們就需要加一些其他的生成策略。讓我們列一下幾種常用主鍵生成·策略,以及在專案中設定方法
no1自動增長:自動增長是我們見過的最基本的生成策略,它遵循的是從1開始依次加1的主鍵策略。
設定方法:
強調一下不要把long寫成long
,會死的很慘,血淚教訓。
@data
public
class
user
可以看到我們在主鍵上加上如圖所示註解便可將策略設定為自增長。
這種需要在資料庫上先設定自增長,否者就會報錯說,id主鍵為空
no.2
uuid:
這種生成策略每次生成隨機唯一的值,如下圖所示
我們可以看到這種生成策略生成的值很長且為字串格式,其還有乙個明顯缺點,那就是排序不方便,字串形式所以很不方便排序
設定方法
@data
public
class
user
這種需要string型別的主鍵,如果換成long等型別就會報錯,顯示不匹配
no.3
id_worker
這是mp自帶策略中一種,用於數字型別,mp就是mybatis plus,這第三中就是它自帶的生成策略。它使用自己的生成演算法生成乙個19位數的主鍵值,如下圖所示
設定方法
@data
public
class
user
這種適用於數字型別主鍵如long型別
no.4
id_worker_str
這是mp自帶策略中一另種,用於字串型別,mp就是mybatis plus,這第三中就是它自帶的生成策略。它使用自己的生成演算法生成乙個19位數的主鍵值,如下圖所示
設定方法
@data
public
class
user
這種用於字串型主鍵如string
no.5雪花生成策略
這種策略是預設生成策略,如果我們不設定type的值,預設就適用雪花演算法。主鍵為long型別或者string型別。
Mybatis Plus主鍵生成策略
一 mybatis plus主鍵生成策略 1 auto 資料庫id自動增長,需要在建立資料表的時候設定主鍵自增 2 id worker mp自帶預設策略,生成19位值,數字型別使用這種策略,比如long 3 id worker str mp自帶預設策略,生成19位值,字串型別使用這種策略 4 inp...
mybatis plus主鍵策略生成失敗
主鍵生成失敗,一直為0 int型別預設為0 實體類 使用雪花演算法 uuid生成主鍵策略 data public class user 資料庫 測試 test void inserttest 突然想到之前學習 雪花演算法 時,雪花演算法為64位長整型,而我的id型別位int,所以可能導致生成失敗 將...
mybatis plus生成主鍵策略教程
mybatis plus 為我們提供了三種設定 主鍵生成策略的方式。它們的優先順序順序是 區域性註解 全域性 預設 雪花演算法 下面我們來一一介紹 全域性設定 值描述 auto 資料庫id自增 none 無狀態,該型別為未設定主鍵型別 註解裡等於跟隨全域性,全域性裡約等於 input input i...