【MyBatis-Plus 常用注解详解】

MyBatis-Plus(简称MP)是一个用于简化 MyBatis 操作的增强工具库,它在 MyBatis 的基础上扩展了一些功能,极大地提高了开发效率。

1. @TableName

@TableName 注解用于指定实体类对应的数据库表名。它的作用是告诉 MyBatis-Plus 在进行 SQL 操作时应该使用哪个表。

示例代码:

@TableName("user")
public class User {
    // 省略其他字段
}

在这个示例中,User 类将映射到数据库中的 user 表。

2. @TableId

@TableId 注解用于标识主键字段。在 MyBatis-Plus 中,可以选择使用三种主键生成策略:IdType.AUTO(自动增长)、IdType.INPUT(手动输入)、IdType.ID_WORKER(分布式全局唯一 ID)等。

示例代码:

@TableId(value = "id", type = IdType.AUTO)
private Long id;

这个示例中,id 字段被标识为主键,并且采用自动增长的方式生成主键值。

3. @TableField

@TableField 注解用于标识实体类中的字段与数据库表中的字段的映射关系。可以指定字段名、是否为数据库字段、自定义字段填充策略等。

示例代码:

@TableField(value = "user_name", exist = true, fill = FieldFill.INSERT)
private String userName;

在这个示例中,userName 字段映射到数据库表中的 user_name 字段,且该字段在插入数据时由自定义的填充策略进行填充。

4. @Version

@Version 注解用于实现乐观锁功能。乐观锁是一种多用户并发控制的策略,通过版本号字段来实现数据的同步控制。

示例代码:

@Version
private Integer version;

在这个示例中,version 字段被标记为乐观锁字段,MyBatis-Plus 将在更新数据时自动检查版本号,以确保数据的一致性。

5. @TableLogic

@TableLogic 注解用于实现逻辑删除功能。逻辑删除是一种在数据库中标记数据为删除状态而不是物理删除的方式。

示例代码:

@TableLogic
private Integer deleted;

在这个示例中,deleted 字段被标记为逻辑删除字段,当删除数据时,MyBatis-Plus 将自动将该字段的值设为特定的标识值,表示数据已被逻辑删除。

相关推荐

  1. MyBatis-Plus 注解详解

    2024-03-12 03:46:02       22 阅读
  2. MyBatis --- 注解

    2024-03-12 03:46:02       29 阅读
  3. MyBatis实战指南(三):注解及使用方法

    2024-03-12 03:46:02       37 阅读
  4. MyBatis plus 详解

    2024-03-12 03:46:02       48 阅读
  5. SQL注入命令详解

    2024-03-12 03:46:02       23 阅读
  6. SpringBoot注解

    2024-03-12 03:46:02       37 阅读
  7. SpringMVC注解

    2024-03-12 03:46:02       25 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-12 03:46:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-12 03:46:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-12 03:46:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-12 03:46:02       18 阅读

热门阅读

  1. react hook: useLayoutEffect

    2024-03-12 03:46:02       25 阅读
  2. 如何优雅的比较两个对象是否相等

    2024-03-12 03:46:02       23 阅读
  3. 在并发场景如何正确的使用锁机制呢?

    2024-03-12 03:46:02       24 阅读
  4. 7-Zip:一款免费开源但强大的压缩软件

    2024-03-12 03:46:02       24 阅读
  5. WPF实现一个表格数据从cs获取动态渲染

    2024-03-12 03:46:02       21 阅读
  6. 存储日期,该如何抉择呢

    2024-03-12 03:46:02       20 阅读
  7. SpringBoot集成Swagger3.0

    2024-03-12 03:46:02       22 阅读
  8. Linux——信号处理

    2024-03-12 03:46:02       19 阅读
  9. 整站下载保存为mhtml

    2024-03-12 03:46:02       16 阅读
  10. 376. 摆动序列(力扣LeetCode)

    2024-03-12 03:46:02       19 阅读