@TableLogic注解表示逻辑删除

1、在实体类中属性加上@TableLogic注解,表示该字段是逻辑删除字段。
2、增加注解后调用BaseMapper的deleteById(id)或者IService的removeById(id),是逻辑删除。如果没有增加该注解,是真删除。
3、@TableLogic注解参数
 value = “未删除的值,默认值为0”
 delval = “删除后的值,默认值为1”
 如果不设置,就使用默认值

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

4、 当使用了@TableLogic注解,调用update方法修改该字段的值是不会将该字段放入修改字段中,而是在条件字段中where条件后。
5、demo
SysUser的删除标识位字段增加了注解@TableLogic

@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "SysUser对象", description = "系统用户")
public class SysUser extends BaseEntity {private static final long serialVersionUID = 1L;@ApiModelProperty(value = "主键")@TableId(value = "id")private Long id;@ApiModelProperty(value = "用户名", required = true)@NotBlank(groups = {Insert.class, Update.class}, message = "用户名不能为空")private String userName;@ApiModelProperty(value = "昵称")private String nickName;@ApiModelProperty(value = "密码")@NotBlank(groups = {Insert.class}, message = "密码不能为空")private String password;@ApiModelProperty(value = "盐值")@Null(groups = {Insert.class, Update.class}, message = "盐值不用传")private String salt;@ApiModelProperty(value = "手机号码", required = true)@Phone(groups = {Insert.class, Update.class})private String phone;@ApiModelProperty(value = "邮箱")@Email(groups = {Insert.class, Update.class})private String email;@ApiModelProperty(value = "性别,0:女,1:男,默认1")private Integer sex;@ApiModelProperty(value = "头像")private String head;@ApiModelProperty(value = "备注")private String remark;@ApiModelProperty(value = "状态,0:禁用,1:启用,2:锁定")@Dict(name="com.sinosoft.springbootplus.system.enums.UserStatus",dataSource = Dict.Type.ENUM,target = "stateName")private String state;@TableField(exist = false)@ApiModelProperty(value = "用户状态")private String stateName;@ApiModelProperty(value = "部门id", required = true)@NotNull(groups = {Insert.class, Update.class}, message = "部门id不能为空")private Long departmentId;@ApiModelProperty(value = "角色ids,用逗号隔开", required = true)@NotBlank(groups = {Insert.class, Update.class}, message = "角色id不能为空")@TableField(exist = false)private String roleId;@ApiModelProperty(value = "逻辑删除,0:未删除,1:已删除")@Null(groups = {Insert.class, Update.class}, message = "逻辑删除不用传")@TableLogic@TableField(select = false)private Integer deleted;@ApiModelProperty(value = "版本")@Null(groups = {Insert.class, Update.class}, message = "版本不用传")@Versionprivate Integer version;@ApiModelProperty(value = "创建时间")@Null(groups = {Insert.class, Update.class}, message = "创建时间不用传")@TableField(fill = FieldFill.INSERT)private Date createTime;@ApiModelProperty(value = "修改时间")@Null(groups = {Insert.class, Update.class}, message = "修改时间不用传")@TableField(fill = FieldFill.UPDATE)private Date updateTime;@ApiModelProperty(value = "租户Id")private Long tenantId;
}

查询查询时,没有拼删除标识位的条件,但是sql还是自动加上了where delete =0

@TableLogic注解相关推荐

  1. @TableLogic注解表示逻辑删除

    @TableLogic注解表示逻辑删除 效果:在字段上加上这个注解再执行BaseMapper的删除方法时,删除方法会变成修改 场景:     1.实体类中属性加上@TableLogic,     @T ...

  2. MybatisPlus 的 MetaObjectHandler 与 @TableLogic

    文章目录 1.MetaObjectHandler 实现公共字段自动填充功能 1.1 日常开发中的公共字段 1.2 Mybatis Plus 中的解决方案 1.3 用法 1.3.1 定义公共字段超类,并 ...

  3. Spring注解大全(史上最全,字母编号,有实例)

    目录 A @Accessors 链式编程使用.需要搭配@Getter和@Setter使用.主要有三个参数: 序号 参数名 介绍 1 chain 链式 2 fluent 流式(若无显示指定chain的值 ...

  4. 快速上手MyBatisPlus~(基友搭配,效率翻倍)

    目录 一.简介 二.快速入门 1. 创建数据库及数据表 2. 新建项目,导入依赖 3. 编写数据库配置文件&连接 4. 创建pojo实体类 5. 编写mapper&扫描 6. 测试类简 ...

  5. MyBatis Plus入门

    MyBatis Plus 简介 官网:http://mp.baomidou.com/ 参考教程:http://mp.baomidou.com/guide/ MyBatis-Plus(简称 MP)是一个 ...

  6. mybatis 乐观锁_MybatisPlus新特性之逻辑删除、乐观锁、自动填充

    MP特性 公共字段的自动填充功能 自动更新全局属性,比如创建的时间修改的时间,这样就不用每执行一次插入更新操作都带上一个set大大节省了很多效率,从而也避免为了因为时间格式的不统一问题. 为了输出日志 ...

  7. spring教程极客学院,Mybatis-Plus学习总结(超详细整理

    int result = userMapper.insert(user); //帮我们生成idSystem.out.println(result); //受影响的行数System.out.printl ...

  8. mybatisplus逻辑删除

    逻辑删除 SpringBoot 配置方式: application.yml 加入配置(如果你的默认值和mp默认的一样,该配置可无): mybatis-plus:global-config:db-con ...

  9. MyBatis-Plus 乐观锁 防止超卖、逻辑删除、自动填充、Id自增

    MyBatis-Plus 乐观锁 防止超卖.逻辑删除.自动填充 Day3 前面的简单的讲了一下mybatis-plus的使用 当然有很多不足 我写博客就是想促进大家一起学习 也想让这些内容更简单一些. ...

  10. mybatis-plus逻辑删除数据后依然能够查出该数据

    问题:逻辑删除后的数据依然能够查询的到 我的出错原因: 在pojo类中的@TableLogic注解中加了value属性,导致mybatis-plus生成的sql语句的条件一直是where delete ...

最新文章

  1. SAP MM 采购附加费计入物料成本?
  2. CCAI2018演讲实录 | 蒲慕明:脑科学与类脑机器学习
  3. SQL Server安全-加密术和SQL注入攻击
  4. java双机调度_Haproxy+keepalive-群集架构实验
  5. HihoCoder#1051:补提交卡
  6. java如何解决高并发问题_java怎么处理高并发?
  7. Facebook:苹果谷歌支持HTML5会死啊
  8. insert mysql后加where,如何在MySQL Insert語句中添加where子句?
  9. 打卡小程序源码修复登录接口
  10. 实践 | 在MySql中,这四种方法可以避免重复插入数据!
  11. css 平行四边形 梯形 组合_微课|人教版五年级数学上册6.4组合图形的面积(P99)...
  12. 《Outlier Analysis》书籍
  13. 52. PHP 伪静态
  14. 通过黑客代号带你回顾九位世界顶尖的黑客大咖
  15. 黑莓android系统,黑莓Passport的手机系统是什么?能升级安卓5.0吗?
  16. Postman 开发团队共享接口协作调试
  17. ECG信号三大主要噪声-基线漂移,工频干扰,肌电干扰
  18. KKT(Karush-Kuhn-Tucher)条件
  19. scrapy爬取网站在线播放TS视频流片段并整合为MP4格式
  20. Witt向量简介 §1.2:三个特殊赋值与Ostrowski定理

热门文章

  1. 四阶行列式直接展开_四阶行列式的完全展开式共有多少项
  2. python字典forward_python工具库库介绍-bidict: 双向字典
  3. Centos Web Proxy(nginx)配置
  4. 百度地图开发(一)----项目准备
  5. 数据库系列之MySQL表ibd文件删除恢复
  6. ava程序员职业生涯规划范文
  7. 【数据结构和算法】爆肝三万字你必须知道的20个解决问题的技巧
  8. 调研14国,芒鞋踏破,这位大学教授给区块链从业者如下建议
  9. 在Markdown中打出上下标
  10. 青龙脚本之-饿了么脚本