• 逻辑删除


    一.逻辑删除

    逻辑删除的本质是修改操作,所谓的逻辑删除其实并不是真正的删除,而是在表中将对应的是否删除标识(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;
    }
    
  • 相关阅读:
    Linux、Windows网络工程师面试题精选
    (转)JVM 垃圾回收算法
    笔试题学习
    使用Spring的好处
    JAVA保留字与关键字
    经典算法问题的java实现
    详解平均查找长度
    13种排序算法详解
    Grunt
    sublimeText
  • 原文地址:https://www.cnblogs.com/npeng/p/13163816.html
Copyright © 2020-2023  润新知