MybatisPlus邏輯刪除


邏輯刪除實現流程

1、數據庫修改

添加 deleted字段

ALTERTABLE `user` ADD COLUMN `deleted` boolean DEFAULT false

2、實體類修改

添加deleted 字段,並加上 @TableLogic 注解

@TableLogic
private Integer deleted;

3、配置(可選)

application.properties 加入以下配置,此為默認值,如果你的默認值和mp默認的一樣,該配置可無

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

4、測試

測試后發現,數據並沒有被刪除,deleted字段的值由0變成了1
測試后分析打印的sql語句,是一條update
注意:被刪除前,數據的deleted 字段的值必須是 0,才能被選取出來執行邏輯刪除的操作

@Test
public void testLogicDelete() {
    int result = userMapper.deleteById(1L);
system.out.println(result);
}

5、測試邏輯刪除后的查詢

MyBatis Plus中查詢操作也會自動添加邏輯刪除字段的判斷

@Test
public void testLogicDeleteSelect() {
List<User> users = userMapper.selectList(null);
users.forEach(System.out::println);
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM