常用的注解

参考视频:MyBatisPlus教程,一套玩转mybatisplus框架,mybatis-plus轻松上手 点击观看

文章目录


1 @TableName

在实体类类型上添加@TableName("数据库表名"),标识实体类对应的表。

java 复制代码
@Data
@TableName("t_user")
public class User {
    private Long id;
    private String name;
    private Integer age;
    private String email;
}

或者可以使用全局配置

yaml 复制代码
mybatis-plus:
  global-config:
    db-config:
      # 设置实体类所对应的表的统一前缀
      table-prefix: t_

2 @TableId

在实体类中 uid 属性上通过@TableId将其标识为主键

java 复制代码
@Date
public class User {
    @TableId
    private Long uid;
    private String name;
    private Integer age;
    private String email;
}

value属性

若实体类中主键对应的属性为 id,而表中表示主键的字段为 uid,此时若只在属性 id 上添加注解@TableId,则抛出异常 Unknown column 'id' in 'field list',即 MyBatisPlus 仍然会将 id 作为表的主键操作,而表中表示主键的是字段 uid 此时需要通过@TableId 注解的 value 属性,指定表中的主键字段,@TableId("uid")或@TableId(value="uid")

type属性

type 属性用来定义主键策略:默认雪花算法

配置全局主键策略

yaml 复制代码
mybatis-plus:
	global-config:
	   db-config:
	     #配置mp的主键策略为自增
	     id-type: auto
	     # 设置实体类所对应的表的统一前缀
	     table-prefix: t_

3 @TableField

在实体类属性上使用@TableField("username")设置属性所对应的字段名

java 复制代码
public class User {
    @TableId("uid")
    private Long id;
    @TableField("username")
    private String name;
    private Integer age;
    private String email;
}

4 @TableLogic

逻辑删除

复制代码
物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除的数据。
逻辑删除:假删除,将对应数据中代表是否被删除字段的状态修改为"被删除状态",之后在数据库中仍旧能看到此条数据记录。
使用场景:可以进行数据恢复。
相关推荐
码云骑士6 小时前
MyBatis-Plus从入门到实战,Lambda查询+注解配置+SpringBoot整合全解析
mybatis
IronMurphy9 小时前
Redis拷打第六讲
redis·spring·mybatis
那个失眠的夜10 小时前
SpringBoot
java·开发语言·spring boot·spring·mvc·mybatis
接着奏乐接着舞11 小时前
springboot mybatis
spring·tomcat·mybatis
Devin~Y13 小时前
大厂Java面试实录:Spring Boot/Cloud、JVM、Redis、Kafka、MyBatis 到 RAG/Agent 的三轮连环问(含答案详解)
java·jvm·spring boot·redis·spring cloud·kafka·mybatis
Mr_pyx1 天前
面试题记录
jvm·数据结构·算法·spring·mybatis
摇滚侠2 天前
Mybatis 面试题 真正的 offer 偏方 Java 基础 Java 高级
java·开发语言·mybatis
Devin~Y2 天前
大厂Java面试实录:Spring Boot/Cloud + Redis + Kafka + JVM + RAG(Spring AI)三轮追问(小Y翻车版)
java·jvm·spring boot·redis·spring cloud·kafka·mybatis
月落归舟2 天前
一篇文章了解Redis内存淘汰机制与过期Key清理
数据库·redis·mybatis
Devin~Y3 天前
大厂Java面试实录:Spring Boot/WebFlux、JVM调优、Redis/Kafka、Spring Cloud 与 RAG/Agent 追问
java·jvm·spring boot·maven·mybatis·jpa·spring webflux