1.先在数据库加delete_status字段,还有实体类加deleteStatus字段(你试试实体类加delete_status,会有问题,默认是驼峰),这就是告诉spring,我要把这字段设为删除标志
@TableLogic//逻辑删除
private Integer deleted;
2.在3.1.1版本之前需要在自己写的配置类中配置,后续版本直接跳过,spring帮着配好了
@Configuration
public class MyConfig {
@Bean
public ISqlInjector SqlInjector(){
return new LogicSqlInjector();
}
}
3.application.properties配置,或是yml配置,指定删除的value设为1,恢复的设为0
#逻辑删除配置
mybatis-plus.global-config.db-config.logic-delete-value=1
mybatis-plus.global-config.db-config.logic-not-delete-value=0
4.测试
//测试删除
@Test
public void deleteTest(){
userMapper.deleteById(1271075432286806022L);
}
结果,其实是更新,把deleted=0设为1,查询时只查为零的数据
==> Preparing: UPDATE user SET deleted=1 WHERE id=? AND deleted=0
==> Parameters: 1271075432286806022(Long)
<== Updates: 1
本文介绍如何在MyBatis Plus中配置逻辑删除功能,包括添加delete_status字段、配置类MyConfig、application.properties设置及测试方法。通过更新deleted字段实现软删除,而非硬删除记录。
839

被折叠的 条评论
为什么被折叠?



