开发笔记---mybatis-plus的逻辑删除@Tablelogic注解

        在开发过程中我们会遇到逻辑删除的需求,在使用mybatis-plus的时候我们可以用@Tablelogic注解便捷的完成逻辑删除和相关查询。

使用@Tablelogic注解

        在使用时需要在对应的实体类的逻辑删除字段上添加@Tablelogic注解。

    例如:

@TableLogic
private Integer is_delete;

@TableLogic注解参数

在添加注解是我们也可以通过配置参数的方式达到自定义标识符的目的:

value = "" 默认的原值,默认为0;

delval = "" 删除后的值,默认为1;

@TableLogic(value="原值",delval="改值")

@TableLogic(value="0",delval="1")
private Integer is_delete;

@TableLogic注解的删除操作

        调用BaseMapper的deleteById(id)或者调用IService的removeById(id)时添加注解和没有注解的数据库操作语句存在差异:
    没有@TableLogic注解调用deleteById/removeById,直接删除数据。
        SQL:delete from user where id = 1
    有注解走Update方法
        SQL:Update user set is_delete = 1 where id = 1

在我们调用mybatis封装好的删除方法时会默认使用update方法修改逻辑删除字段数据。

@TableLogic注解的查询操作

        在使用mybatis-plus封装好的查询方法时会默认添加"is_delete=原值"的查询条件,如.list(),.page()等查询方法。

        如果在存在注解的情况下删除数据,使用查询方法可以去除删除数据,当删除注解时又可以查询出删除数据,因为在去除注解后查询会去除逻辑查询的条件拼接,所以这时需要我们手动添加逻辑删除查询条件。

        存在注解和不存在注解的查询sql可在控制台打印查看,我就不敲了。。。。。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值