Mybatis-plus配置逻辑删除

Mybatis-plus配置逻辑删除

全局生效的逻辑删除配置

mybatis-plus:  
  global-config:  
    db-config: 
      # 全局逻辑删除配置
      logic-delete-field: valid # 全局逻辑删除的实体字段名
      # 若逻辑已删除和未删除的值和默认值一样,则可以不配置这2项
      logic-delete-value: 0 # 逻辑已删除值(默认为1)  
      logic-not-delete-value: 1 # 逻辑未删除值(默认为0)  

针对某个实体类做逻辑删除处理

@TableField(value = "valid", select = false)
@TableLogic(value = "1", delval = "0")
private Boolean valid;

开启逻辑删除对SQL的影响

INSERT语句:没有影响
SELECT语句:追加WHERE条件,过滤掉已删除的数据
UPDATE语句:追加WHERE条件,防止更新到已删除的数据
DELETE语句:转变为UPDATE语句

注意:注解式自定义SQL可能不会生效(例如: @Select("select * from user"))

posted @ 2022-05-09 17:02  itwetouch  阅读(810)  评论(0编辑  收藏  举报