1. @TableName
@TableName 注解用于指定实体类对应的数据库表名。它的作用是告诉 MyBatis-Plus 在进行 SQL 操作时应该使用哪个表。
@TableName("user")
public class User {
// 省略其他字段
}
2. @TableId
@TableId
注解用于标识主键字段。在 MyBatis-Plus 中,可以选择使用三种主键生成策略:IdType.AUTO
(自动增长)、IdType.INPUT
(手动输入)、IdType.ID_WORKER
(分布式全局唯一 ID,雪花算法)等。
@TableId(value = "id", type = IdType.AUTO)
private Long id;
// 数据库默认是Id,如果实体类字段没有Id,则入库会报错, @TableId标记在哪个字段上,则哪个字段是主键id
// value指定表中主键的字段
3. @TableField
@TableField
注解用于标识实体类中的字段与数据库表中的字段的映射关系。可以指定字段名、是否为数据库字段、自定义字段填充策略等。
@TableField(value = "user_name", exist = true, fill = FieldFill.INSERT)
private String userName;
4. @Version
@Version
注解用于实现乐观锁功能。乐观锁是一种多用户并发控制的策略,通过版本号字段来实现数据的同步控制。
@Version
private Integer version;
5. @TableLogic
@TableLogic
注解用于实现逻辑删除功能。逻辑删除是一种在数据库中标记数据为删除状态而不是物理删除的方式。
@TableLogic
private Integer deleted;
6、@MapperScan(“com.java.**.mapper”)
用于扫描需要被mybatis_plus加载的类,本身是一个mybatis的注解,常用于在启动类上。