介绍
这期内容当中小编将会给大家带来有关利用Mybatisplus如何实现一个自动填充功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
<强> 1,方式一强>
数据库级别(注意:不建议此方式,因为工作中不允许你修改数据库)
步骤
在表中新增字段create_time, update_time,给字段赋予默认值,在需要更新的字段(update_time)选择更新
在实体类增加对应属性
<强> 2,方式二强>
代码级别,建议使用
步骤
在实体类需要自动填充的属性上加注解
包com.yl.bean; 进口com.baomidou.mybatisplus.annotation.FieldFill; 进口com.baomidou.mybatisplus.annotation.IdType; 进口com.baomidou.mybatisplus.annotation.TableField; 进口com.baomidou.mybatisplus.annotation.TableId; 进口lombok.Data; 进口lombok.NoArgsConstructor; 进口java.io.Serializable; 进口java.util.Date;/* * *用户实体类 */@ data @NoArgsConstructor 公开课用户实现了Serializable { @TableId(类型=IdType.AUTO) 私人整数id; 私人字符串名称; 私人整数年龄; 私人字符串邮件; @TableField(填补=FieldFill。插入)//插入数据时更新该字段 私人createTime日期; @TableField(填补=FieldFill.INSERT_UPDATE)//插入和修改时更新该字段 私人updateTime日期; }
注意:数据库要有对应字段,不会自动给你生成字段
编写处理器来处理自动填充注解
包com.yl.handler; 进口com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; 进口lombok.extern.slf4j.Slf4j; 进口org.apache.ibatis.reflection.MetaObject; 进口org.springframework.stereotype.Component; 进口java.util.Date;/* * *自动填充处理器实现类 */@Slf4j//配置日志输出,也可以不配置 @ component 公共类MyMetaObjectHandler实现MetaObjectHandler {/* * *插入元对象字段填充(用于插入时对公共字段的填充) * * @param metaObject元对象 */@Override 公共空间insertFill (MetaObject MetaObject) {//日志输出 log.info(“开始插入填充.....“);//字段填充 this.setFieldValByName (“createTime"新的日期(),metaObject); this.setFieldValByName (“updateTime"新的日期(),metaObject); }/* * *更新元对象字段填充(用于更新时对公共字段的填充) * * @param metaObject元对象 */@Override 公共空间updateFill (MetaObject MetaObject) {//日志输出 log.info(“开始更新填充.....“);//字段填充 this.setFieldValByName (“updateTime"新的日期(),metaObject); } }
上述就是小编为大家分享的利用Mybatisplus如何实现一个自动填充功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。