我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mybatis plus逻辑删除注解@TableLogic的方法是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mybatis plus逻辑删除注解@TableLogic的方法是什么

Mybatis plus逻辑删除注解@TableLogic的方法是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

首先这个注解是苞米豆出品,也就是我们常说的mybatis升级版的东西。

简单讲一下这个注解的用法:我们在做数据库设计的时候有时候哪怕是删除也不会真的走物理删除,毕竟这样很多数据就不可恢复了,大多数时候很多删除都是用逻辑删除。

物理删除和逻辑删除

简单来说物理删除就是真的把这条数据从数据库删除了。
而逻辑删除主要是把表中的某一个字段作为标识符,一般我们常用的会默认初始为0,当我们想要删除这条数据的时候会把这个标识符改成1。这样在我们的常识里这条记录就被删除了。并且任何的查询都会添加这个条件,也就是要在代码中保证查询出来的数据是有效的。

@TableLogic注解

@TableLogic注解默认值:

刚刚已经说了这个注解是用于逻辑删除的,代表一个标识符,既然是标识符肯定要有值了,比如我上面说的0表示存在,1表示删除。但是不能排除有的设计就是不按照常理,比如1表示存在,2表示删除。所以@TableLogic注解是可以设置默认值的。用法如下:

@TableLogic(value=“存在标识”,delval=“删除标识”)private Integer del_flag;

如果不写value和delval会默认存在标识是0.删除标识是1.

@TableLogic注解用法

这个注解的用处就比较简单了,当我们在实体类中某一个字段添加了这个注解,就相当于告诉mp这个字段是个标识符。我们调用BaseMapper或者调用IService的所有增删改查方法会受影响。

  • 查询的时候用条件构造器,不用再对这个字段进行判断,会自动筛选出存在的值。这里需要注意拿我上面的demo举例:哪怕我们传条件del_flag = 1,也不会生效。简单总结下:用mp条件构造器查询出来的结果一定是逻辑存在的

  • 修改的时候差不多,如果我们把实体对象的del_flag 赋值为1然后保存,也是保存不成功的。

  • 删除的时候我们如果不用这个注解,用mp的delete方法或者remove方法都是物理删除。但是如果用了这个注解,那么所有的delete方法或者remove方法都是逻辑删除,也就是将del_flag 改为1.

需要注意的是上面说的都只对mp的查询有影响,我们用xml或者注释的方式自己写sql是不生效的!

看完上述内容,你们掌握Mybatis plus逻辑删除注解@TableLogic的方法是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Mybatis plus逻辑删除注解@TableLogic的方法是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Mybatis plus逻辑删除注解@TableLogic的方法是什么

Mybatis plus逻辑删除注解@TableLogic的方法是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。首先这个注解是苞米豆出品,也就是我们常说的mybatis升级
2023-06-29

Mybatis-plus自定义SQL注入器查询@TableLogic逻辑删除后的数据详解

这篇文章主要给大家介绍了关于Mybatis-plus自定义SQL注入器查询@TableLogic逻辑删除后的数据的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
2023-03-09

mybatis级联删除的方法是什么

MyBatis提供了两种级联删除的方法:使用``标签来定义级联删除的SQL语句。在该标签中可以使用``标签来循环删除多个相关的记录。例如:DELETE FROM user WHERE id = #{id};DELETE FROM user
2023-10-25

sql挂起注册表删除的方法是什么

SQL Server 挂起是指 SQL Server 数据库引擎无法响应客户端请求,这可能是由于某些长时间运行的查询或其他原因导致的。删除注册表中的某些键值可以帮助解决 SQL Server 挂起的问题。以下是 SQL Server 挂起注
2023-06-14

mybatis-plus拦截器敏感字段加解密的实现方法是什么

本篇内容主要讲解“mybatis-plus拦截器敏感字段加解密的实现方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mybatis-plus拦截器敏感字段加解密的实现方法是什么”吧!背景
2023-06-25

sqlite删除表报错的原因及解决方法是什么

当尝试删除一个不存在的表时,SQLite会报错,提示无法删除表格。这通常是因为表格名称拼写错误或者表格不存在的原因导致的。解决方法:确保要删除的表格名称拼写正确,与数据库中的实际表格名称完全一致。在执行删除表格的操作之前,可以先查询数据
sqlite删除表报错的原因及解决方法是什么
2024-04-10

百度删除网站收录内容的解决方法是什么

这篇文章给大家介绍百度删除网站收录内容的解决方法是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。网友问:为什么百度收录了我的内容页,过后又删除?   落拓的回复:   网站权重问题、文章原创度不够!   百度首次索
2023-06-12

亚马逊解决与删除服务器异常问题的方法是什么

检查服务器状态:如果您的服务器出现异常,例如访问量激增或服务器故障,您可以通过检查服务器状态来识别问题。这可以通过查看日志文件、错误消息或运行其他测试来实现。恢复服务器配置:如果服务器配置发生变化,例如删除了一些数据库或存储设备,您可以通过重新配置服务器配置来恢复服务器状态。更新操作系统和应用程序:如果服务器配置发生变化,例如删除了某个应用程序或更新了某个安全补丁,您可以通过更新操作系统和应用程序...
2023-10-27

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录