码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MYBatis-Plus常用注解@TableName、@TableId、@TableField、@TableLogic


    目录

    目录

    一、@TableName

    二、@TableId

    雪花算法

    普通用法

     全局配置主键生成策略

    三、@TableField

    四、TableLogic



    一、@TableName

    注解作用:设置实体类对应的表明

    value作用:value指定数据库中的表名

    如果我们不设置这个注解,我们操作的数据库的表就由BaseMapper 泛型决定(Book)

    1. @TableName(value = "t_book")
    2. public class Book {}

    另外的一种方法:

    设置实体类所对应的表的统一前缀

    我们如果不用注解也可以,比如下面的这个方式,给每个类都配置一个前缀,比如说表名是Book,但他其实已经默认是t_Book

    二、@TableId

          作用:将属性所对应的字段指定为主键

          属性名value :指定主键的字段,要和数据库表中的属性名一致,要不然最终的查询结果是null
          将数据库中的结果对此变量名进行注入

           type属性:设置主键生成策略,不指定的话默认雪花算法  (数据库记得勾选自动递增)

    值描述
    AUTO(0)       使用数据库的自增策略,注意,该类型请确保数据库设置了id自增,否则无效
    NONE(1)      不设置id生成策略
    INPUT(2)需要自己数据添加主键,不能为null,否则报错
    ASSIGN_ID(3)默认就是这个,基于雪花算法的策略生成数据id,与数据库id是否设置自增无关(如果我们自己指定了ID,便不会触发雪花算法),可兼容数值型与字符串型
    ASSIGN_UUID(4)以UUID生成算法作为id生成策略

      

    雪花算法

      占位符:0 表示这个数是正数

      我们不用研究他,直接使用就可以了

    普通用法

    1. @TableId(value="id",type = IdType.AUTO) //代表自增算法
    2. private int id;

     全局配置主键生成策略

     

    三、@TableField

    作用:指定属性所对应的字段名

    1. @TableField(value = "bookName")
    2. private String bookName;
    3. @TableField(value = "statue")
    4. private String statue;
    5. @TableField(value="type")
    6. private String type;

    如果不加上面那个注解的话,就会默认两个单词中间加一个—,如下图所示

    四、TableLogic

     0表示未删除状态,1表示删除状态

    物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除的数据

    逻辑删除:假删除,将对应数据中代表是否被删除字段的状态修改为“被删除状态”,之后在数据库 中仍旧能看到此条数据记录

    使用场景:可以进行数据恢复,对删除的数据进行恢复的操作

    我们对数据进行delete删除之后,我们再进行查询操作时查询不到的(这个时候不用指定deleted=0),但是数据还是存在在数据库中

  • 相关阅读:
    Effective C++ 阅读笔记 05:实现
    关于ASP.NET Core WebSocket实现集群的思考
    Vcenter6.5扩容存储后无法创建虚机处理方法
    室内探索无人机,解决复杂环境下的任务挑战!
    【翻译】Global Voices: Crossing Borders in Automatic News Summarization
    Python日期时间差的计算(天/小时/分钟)及timedelta函数的使用(附python代码)
    vue3中el-tree设置默认选中节点和展开节点
    家政按摩上门服务小程序搭建
    【面试】class文件里面是什么?
    chrome_elf.dll丢失怎么办?修复chrome_elf.dll文件的方法
  • 原文地址:https://blog.csdn.net/weixin_51351637/article/details/127044796
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号