Mybatis-Plus @TableField详解

阅读数:85 评论数:0

跳转到新版页面

分类

python/Java

正文

一、@TableField属性

value String 数据库字段名
exist boolean exist = false 表示该属性不是数据库字段,新增等使用bean的时候,mybatis-plus就会忽略这个,不会报错
condition String 预处理 where 实体查询比较条件,有值设置则按设置的值为准,没有则为默认全局的 %s=#{%s}。@TableField(condition = SqlCondition.LIKE)输出SQL为: select 表 where name LIEK CONCAT('%',值,'%')
update String 预处理 update set 部分注入,例如:当在age字段上注解update=“%s+1” 表示更新时会 set age=age+1 (该属性优先级高于 el 属性)
insertStrategy FieldStrategy Mybatis-plus insert对字段的操作
updateStrategy FieldStrategy Mybatis-plus update对字段的操作
whereStrategy FieldStrategy Mybatis-plus where条件对字段的操作
fill FieldFill 字段自动填充策略
select boolean @TableField(select = false) 查询时,则不返回该字段的值
keepGlobalFormat boolean 是否保持使用全局的 format 进行处理
jdbcType JdbcType JDBC 类型 (该默认值不代表会按照该值生效)
typeHandler Class<? extends TypeHandler> 类型处理器 (该默认值不代表会按照该值生效)
numericScale String 指定小数点后保留的位数

二、FieldStrategy

IGNORED 忽略判断,该字段值不论是什么,都进行更新
NOT_NULL (默认)不为null则更新,也就是字段值为null则不生成到sql中不更新该字段,如果字段值为""(空字符串)也是会更新的
NOT_EMPTY 不为空则更新,注意该字段值为null或为""(空字符串)都不会更新
DEFAULT 默追随全局配置,和IGNORED 中的配置保持一致
NEVER  不做更新操作,该字段值不论是什么,都不进行更新

三、FieldFill

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



相关推荐