文章目录
一. 使用场景
MetaObjectHandler是元对象字段填充控制器抽象类,实现公共字段自动写入。
比如通常,我们在建表时,会设置几个公共字段:创建人(creator)、更新人(uptater)、创建时间(create_time)、更新时间(update_time)。
每次将实体对象新增入库时,都要设置创建人和创建时间;每次更新实体对象时,都要设置更新人和更新时间;如果这是都放在业务代码中,很是繁琐,那么可不可以统一配置,自动帮我们添加这些属性呢?答案就是使用MetaObjectHandler。
二. 使用姿势
官方说明:https://mp.baomidou.com/guide/auto-fill-metainfo.html
注意:不同版本api略有不同,但是步骤是一样的,接口也是一样的,本文是3.1.0 。
步骤如下:
1.实现MetaObjectHandler接口
MetaObjectHandler接口有两个接口方法,需要我们自己去实现它:
/**
* 插入元对象字段填充(用于插入时对公共字段的填充)
*
* @param metaObject 元对象
*/
void insertFill(MetaObject metaObject);
/**
* 更新元对象字段填充(用于更新时对公共字段的填充)
*
* @param metaObject 元对象
*/
void updateFill(MetaObject metaObject);
自定义实现类MyMetaObjectHandler如下:
@Slf4j
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
log.info("start insert fill ....");

介绍如何使用MetaObjectHandler自动填充公共字段,如创建人、更新时间等,并列出常见失效场景。
最低0.47元/天 解锁文章
3441





