Mybatis-Plus 删除操作

测试删除

// 删除用户
@Test
void deleteById() {
   userMapper.deleteById(5L);
}
// 通过 id 批量删除用户
@Test
void deleteBatchIds() {
    userMapper.deleteBatchIds(Arrays.asList(5,6,7));
}
// 通过 map 批量删除用户
@Test
void deleteByMap() {
    HashMap<String, Object> map = new HashMap<>();
    map.put("name", "777");
    map.put("age", "77");
    userMapper.deleteByMap(map);
}

逻辑删除

物理删除: 从数据库中直接删除

逻辑删除: 在数据库中没有被移除,而是通过一个变量让他失效  deleted=0 > deleted=1

 

管理员可以查看被删除记录,防止数据丢失,类似于回收站!

1.在数据库中增加 deleted 字段(默认值为0)

2.实体类加入对应的字段

@TableLogic  //逻辑删除
private Integer deleted;

3.配置逻辑删除  ( MybatisPlusConfig.java 和 application.properties 文件)

// 逻辑删除组件!
@Bean
public ISqlInjector sqlInjector() {
    return new LogicSqlInjector();
}
# 逻辑已删除值(默认为 1)
mybatis-plus.global-config.db-config.logic-delete-value=1
# 逻辑未删除值(默认为 0)
mybatis-plus.global-config.db-config.logic-not-delete-value=0

测试结果:

记录依旧在数据库,但是 deleted 值发生了变化

 再执行查询这条信息,没有查到,查询的时候会自动过滤被逻辑删除的字段

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值