MybatisPlus(二) 相关注解

mybatisPlus相关注解

注解名称 使用位置 描述说明
@TableName 实体类

表名注解,标识实体类对应的数据相应的表

属性 类型 必须指定 默认值   描述说明
value String "" 表名
schema String "" schema
keepGlobalPrefix boolean false 是否保持使用全局的 tablePrefix 的值(当全局 tablePrefix 生效时)
resultMap String "" xml 中 resultMap 的 id(用于满足特定类型的实体类对象绑定)
autoResultMap boolean false xml 中 resultMap 的 id(用于满足特定类型的实体类对象绑定)
excludeProperty String[] {} 需要排除的属性名 @since 3.3.1

 

@TableId 实体类主键字段

主键注解

属性 类型 必须指定 必须指定 描述说明
value String "" 主键字段名
type Enum IdType.NONE

指定主键类型

描述
AUTO 数据库 ID 自增
NONE 无状态,该类型为未设置主键类型(注解里等于跟随全局,全局里约等于 INPUT)
INPUT insert 前自行 set 主键值
ASSIGN_ID 分配 ID(主键类型为 Number(Long 和 Integer)或 String)(since 3.3.0),使用接口IdentifierGenerator的方法nextId(默认实现类为DefaultIdentifierGenerator雪花算法)
ASSIGN_UUID 分配 UUID,主键类型为 String(since 3.3.0),使用接口IdentifierGenerator的方法nextUUID(默认 default 方法)
ID_WORKER 分布式全局唯一 ID 长整型类型(please use ASSIGN_ID)
UUID 32 位 UUID 字符串(please use ASSIGN_UUID)
ID_WORKER_STR 分布式全局唯一 ID 字符串类型(please use ASSIGN_ID)

 

 

@TableField 字段注解(非主键)

表示当前字段与数据库表字段对应

属性 属性 必须指定 默认值   描述说明
value String "" 数据库字段名
exist boolean true 是否为数据库表字段
condition String "" 字段 where 实体查询比较条件,有值设置则按设置的值为准,没有则为默认全局的 %s=#{%s}
update String "" 字段 where 实体查询比较条件,有值设置则按设置的值为准,没有则为默认全局的 %s=#{%s}
insertStrategy Enum FieldStrategy.DEFAULT

举例:NOT_NULL
insert into table_a(<if test="columnProperty != null">column</if>) values (<if test="columnProperty != null">#{columnProperty}</if>)

描述
IGNORED 忽略判断
NOT_NULL 非 NULL 判断
NOT_EMPTY 非 NULL 判断
DEFAULT 追随全局配置
NEVER 不加入SQL

 

updateStrategy Enum FieldStrategy.DEFAULT

举例:IGNORED
update table_a set column=#{columnProperty}

描述
IGNORED 忽略判断
NOT_NULL 非 NULL 判断
NOT_EMPTY 非 NULL 判断
DEFAULT 追随全局配置
NEVER 不加入SQL
whereStrategy Enum FieldStrategy.DEFAULT

举例:NOT_EMPTY
where <if test="columnProperty != null and columnProperty!=''">column=#{columnProperty}</if>

描述
IGNORED 忽略判断
NOT_NULL 非 NULL 判断
NOT_EMPTY 非 NULL 判断
DEFAULT 追随全局配置
NEVER 不加入SQL
fill Enum FieldFill.DEFAULT

字段自动填充策略

描述
DEFAULT 默认不处理
INSERT 插入时填充字段
UPDATE 插入时填充字段
INSERT_UPDATE 插入和更新时填充字段

 

select boolean true 是否进行 select 查询
keepGlobalFormat boolean false 是否进行 select 查询
jdbcType JdbcType false JDBC 类型 (该默认值不代表会按照该值生效)
typeHandler Class<? extends TypeHandler> UnknownTypeHandler.class 类型处理器 (该默认值不代表会按照该值生效)
typeHandler String "" 指定小数点后保留的位数

 

 @TableLogic  字段注解(非主键)

 表字段逻辑处理注解(逻辑删除)

属性 类型 必须指定 默认值 描述
value String "" 逻辑未删除值
delval String "" 逻辑删除值

 

 @Version   字段注解(非主键)  乐观锁注解、标记 @Version 在字段上
 @EnumValue    普通枚举类注解(注解在枚举字段上)
 @SqlParser    
 @keySequence  

 序列主键策略 oracle

属性 类型 必须指定 默认值 描述
value String "" DbType.OTHER
dbType Enum DbType.OTHER 数据库类型,未配置默认使用注入 IKeyGenerator 实现,多个实现必须指定

 

 @OrderBy  

 数据库类型,未配置默认使用注入 IKeyGenerator 实现,多个实现必须指定

属性 类型 必须指定 默认值 描述
isDesc boolean true 是否倒序查询
sort short Short.MAX_VALUE 数字越小越靠前

 

 @InterceptorIgnore    value 值为 1 | yes | on 视为忽略,例如 @InterceptorIgnore(tenantLine = "1")

value 值为 0 | false | off | 空值不变 视为正常执行。

 

posted @ 2023-03-09 21:22  向大海  阅读(85)  评论(0编辑  收藏  举报