MyBatisPlus 邏輯刪除演示

2022-09-14 15:24:31 字數 1960 閱讀 3399

實體類邏輯刪除欄位上加上@tablelogic註解,字段支援所有資料型別(推薦使用 integer,boolean,localdatetime),如果使用localdatetime,建議邏輯未刪除值設定為字串null,邏輯刪除值只支援資料庫函式例如now()。

1

/**2* 3

* 講師4*

5*6*

@author

zhengzhaoxiang7*

@since

2020-06-018*/

9@data

10 @equalsandhashcode(callsuper = false

)11 @accessors(chain = true

)12 @apimodel(value="eduteacher物件", description="講師")

13public

class eduteacher implements

serializable

config 配置類中配置邏輯刪除外掛程式

1

/**2

* @description:3*

@author

: zzx

4* @createdate: 2020/6/15*

@version

: 1.06*/

7@configuration

8 @componentscan(basepackages = )

10public

class

myconfig

19 }

1

/**2* 3

* 講師 前端控制器4*

5*6*

@author

zhengzhaoxiang7*

@since

2020-06-018*/

9@restcontroller

11public

class

eduteachercontroller

20 }

測試工具

以下為特殊需求設定

1 mybatis-plus:

2 global-config:

3 db-config:

4 logic-delete-field: flag #全域性邏輯刪除字段值 3.3

.0開始支援,詳情看下面。

5 logic-delete-value: 1 # 邏輯已刪除值(預設為 1

)6 logic-not-delete-value: 0 # 邏輯未刪除值(預設為 0)

從 3.3版本開始,如果公司**比較規範,比如統一了全域性都是flag(可修改)為邏輯刪除字段。使用此配置則不需要在實體類上新增 @tablelogic。但如果實體類上有 @tablelogic 則以實體上的為準,忽略全域性。 即先查詢註解再查詢全域性,都沒有則此表沒有邏輯刪除。yml 配置如下:

1 mybatis-plus:

2 global-config:

3 db-config:

4 logic-delete-field: flag #全域性邏輯刪除字段值

附件說明:邏輯刪除是為了方便資料恢復和保護資料本身價值等等的一種方案,但實際就是刪除。如果你需要再查出來就不應使用邏輯刪除,而是以乙個狀態去表示。

如:員工離職,賬號被鎖定等都應該是乙個狀態字段,此種場景不應使用邏輯刪除。若確需查詢刪除資料,如老闆需要檢視歷史所有資料的統計彙總資訊,請單獨手寫sql。

mybatis plus邏輯刪除

1.先在資料庫加delete status欄位,還有實體類加deletestatus欄位 你試試實體類加delete status,會有問題,預設是駝峰 這就是告訴spring,我要把這欄位設為刪除標誌 tablelogic 邏輯刪除 private integer deleted 2.在3.1.1...

mybatis plus 邏輯刪除

整合步驟 1 匯入依賴 2 配置 資料來源 驅動 鏈結資訊 spring datasource username root password root url jdbc mysql driver class name com.mysql.cj.jdbc.driver name gulimall pr...

MybatisPlus邏輯刪除

新增 deleted欄位 altertable user add column deleted boolean default false新增deleted 字段,並加上 tablelogic 註解 tablelogic private integer deleted mybatis plus.gl...