Mybatis Plus 自動填充與邏輯刪除

2021-10-23 04:16:30 字數 2078 閱讀 1429

建立時間、修改時間!這些個操作一般都是自動化完成的,我們不希望手動更新!

阿里巴巴開發手冊:所有的資料庫表:gmt_create、gmt_modified幾乎所有的表都要配置上!而且需要自動化!

方式一:資料庫級別

1、在表中新增字段 create_time,update_time

2、我們需要先把實體類同步!

private date createtime;

private date updatetime;

3、再次測試

方式二:**級別,注意:時區問題少了八個小時

1、刪除資料庫的預設值

2、實體類字段屬性上需要增加註解

//字段新增填充內容

@tablefield

(fill = fieldfill.insert)

private date createtime;

@tablefield

(fill = fieldfill.insert_update)

private date updatetime;

3、編寫處理器來處理這個註解即可!

@slf4j

@component

//一定不要忘記把處理器加到ioc容器中!

public

class

mymetaobjecthandler

implements

metaobjecthandler

//更新時候的填充策略

@override

public

void

updatefill

(metaobject metaobject)

}

4、測試插入

5、更新時間

物理刪除:從資料庫中直接移除

邏輯刪除:在資料庫中沒有被移除,而是通過乙個變數來讓他失效!deleted = 0 => deleted = 1

管理員可以檢視被刪除的記錄!防止資料的丟失!類似於**站!

測試一下:

1、在資料表中增加乙個 deleted 字段

//邏輯刪除

private integer delete;

3、配置!

// 邏輯刪除元件

@bean

public isqlinjector sqlinjector()

# 配置邏輯刪除

mybatis-plus.global-config.db-config.logic-delete-value=1

mybatis-plus.global-config.db-config.logic-not-delete-value=0

4、測試一下

記錄依舊在資料庫,但是值卻已經變化了

Mybatis Plus自動填充

使用場景 專案中經常會遇到一些資料,每次都使用相同的方式填充,例如記錄的建立時間,更新時間等,完成這些欄位的賦值工作 1 資料庫表中新增自動填充字段 在表中新增datetime型別的新的字段 create time update time 2 實體上新增屬性和註解 data public class...

MybatisPlus 自動填充

專案中經常會遇到一些資料,每次都使用相同的方式填充,例如記錄的建立時間,更新時間等。我們可以使用mybatis plus的自動填充功能,完成這些欄位的賦值工作 在user表中新增datetime型別的新的字段 create time update time 實體上增加欄位並新增自動填充註解 tabl...

Mybatis Plus自動填充功能

有些時候我們可能會有這樣的需求,插入或者更新資料時,希望有些字段可以自動填充資料,比如密碼 version等。在mybatis plus中提供了這樣的功能,可以實現自動填充。tablefield fill fieldfill.insert 插入資料時進行填充 private integer vers...