逻辑删除
逻辑删除:只是在字段deleted中设置是否被删除的标记,实际上数据还保留在数据库中,这样做便于解决操作失误,可以恢复数据;
Mybatis-Plus做逻辑删除:
- 在配置类中导入逻辑删除插件
//逻辑删除插件
@Bean
public ISqlInjector sqlInjector(){
return new LogicSqlInjector();
}
- 在实体类逻辑删除字段上添加注解@TableLogic
//逻辑删除
@TableLogic
private Integer deleted;
- 测试类中测试
@Test
public void testDelete(){
int delete = userMapper.deleteById("aaf633e65d4a48168a5f9e97f758184f");
System.out.println(delete);
}
逻辑删除的时候要设置默认值,以下是设置默认值的sql语句。
alter table sys_user alter column deleted set default 0;