邏輯刪除


一.邏輯刪除

邏輯刪除的本質是修改操作,所謂的邏輯刪除其實並不是真正的刪除,而是在表中將對應的是否刪除標識(is_delete)或者說是狀態字段(status)做修改操作。比如0是未刪除,1是刪除。在邏輯上數據是被刪除的,但數據本身依然存在庫中。

對應的SQL語句:update 表名 set is_delete = 1 where id = 1;語句表示,在該表中將id為1的信息進行邏輯刪除,那么客戶端進行查詢id為1的信息,服務器就不會提供信息。倘若想繼續為客戶端提供該信息,可將 is_delete 更改為 0 。

二.流程

1.配置邏輯刪除插件

@Configuration  //配置文件
@MapperScan("com.np.eduservice.mapper")
public class EduConfig {
    /**
     * 邏輯刪除
     *
     * */
    @Bean
    public ISqlInjector sqlInjector(){
        return new LogicSqlInjector();
    }
}

2.在實體類上添加注解 @TableLogic

@ApiModelProperty(value = "邏輯刪除 1(true)已刪除, 0(false)未刪除")
@TableLogic //邏輯刪除
private Boolean isDeleted;

3.編寫controller方法

//刪除教師
@DeleteMapping("{id}") //id值需要通過路徑進行傳遞   PathVariable 獲取路徑中的id值
public boolean removeTeacher(@PathVariable String id){
    boolean b = eduTeacherService.removeById(id);
    return b;
}


免責聲明!

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



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