首页 > TAG信息列表 > FieldFill
解决mybatis@TableField注解默认值赋值,实现MetaObjectHandler后,entity类没有注解也会走insertFill跟updateFill方法赋值
package com.bxwell.hj360.pollutionsource.handle; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.baomidou.mybatisplus.core.metadata.TableFieldInfo; import com.baomidou.myb谷粒学院开发实战(二)
创建自动填充类 MyMetaObjectHandler 在this.setFieldValByName(“gmtCreate”, new Date(), metaObject);中的gmtCreate是属性名,而不是字段名。 对于实体类中自动填充的属性添加注解 @ApiModelProperty(value = “创建时间”) @TableField(fill = FieldFill.INSERT) privaMybatis plus 实体类常用注解
这里简单记录常用的注解,详情需要去官网学习!! 1、@TableName 用于定义表名 2、@TableId 用于定义表的主键 属性: value 用于定义主键字段名 type 用于定义主键类型(主键策略 IdType) 主键策略: IdType.AUTO 主键自增,系统分配,不需要手动输入,但需要设置 mysql auto_incrmybatis数据库字段默认填充
背景描述 目前,大多数项目的数据库设计,都会添加一些公共字段,比如version(版本号)、deleted(逻辑删除标识)、create_time、update_time、create_by、update_by,这些字段都是在各个业务里分开处理的。 这是,mybatis给我们提供了一种便利的方式,采用切面的方式进行实现。 实现过程 第一步mybatis-plus 自动填充公共字段
@Component public class MyHandler implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { // 在createTime字段上加注解@TableField(fill = FieldFill.INSERT) this.setFieldValByName("createTime", new【MyBatis-Plus】实现字段自动填充功能
在项目中,我们有一些公共的字段需要做修改如: gmt_create:创建时间 creator_id:创建人 gmt_modified:修改时间 modifier_id:修改人 这时候我们可以采用 MyBatis-Plus 中的字段自动填充功能去实现 思路:抽取公用字段封装到BaseEntity类中,再将使用到此公共字段的类继承基类,最后由 MyBatisMybatis - plus 注解的使用
自动填充注解 @TableField 值 描述 value 字段值(驼峰命名方式,该值可无) update 预处理 set 字段自定义注入 condition 预处理 WHERE 实体条件自定义运算规则 el 详看注释说明 exist 是否为数据库表字段( 默认 true 存在,false 不存在 ) strategy 字段验证 (MyBatisPlus中使用 @TableField完成字段自动填充
场景 官方文档: 字段注解 @TableField com.baomidou.mybatisplus.annotations.TableField 值 描述 value 字段值(驼峰命名方式,该值可无) update 预处理 set 字段自定义注入 condition 预处理 WHERE 实体条件自定义运算规则 el 详看注释说明 exist 是否为数据库表字段( 默认 t