本文使用的版本:mybatis-plus 3.0.7.1,不同版本填充处理器可能有所不同!
(低版本有的是 extends MetaObjectHandler 而不是 implements MetaObjectHandler 来创建填充处理器)
compile("com.baomidou:mybatis-plus-boot-starter:3.0.7.1")
一、创建填充处理器:MetaObjectHandlerConfig
@Component public class MetaObjectHandlerConfig implements MetaObjectHandler { @Override public void insertFill(MetaObject metaObject) { Date now = new Date(); setFieldValByName("createDate", now, metaObject); } @Override public void updateFill(MetaObject metaObject) { Date now = new Date(); this.setFieldValByName("modifyDate", now, metaObject); }
二、配置填充处理器:
public MybatisSqlSessionFactoryBean sqlSessionFactory(@Qualifier("primaryDataSource") DataSource dataSource) throws IOException { MybatisSqlSessionFactoryBean mybatisPlus = new MybatisSqlSessionFactoryBean(); //加载数据源 mybatisPlus.setDataSource(dataSource); //全局配置 GlobalConfig globalConfig = new GlobalConfig(); //配置填充器 globalConfig.setMetaObjectHandler(new MetaObjectHandlerConfig()); mybatisPlus.setGlobalConfig(globalConfig); return mybatisPlus; }
(xml 方式配置参考链接) 跳转
三、使用时,设置填充字段的填充类型:
/* * 创建时间 * */ @TableField(fill = FieldFill.INSERT) private LocalDateTime createDate; /* * 修改时间 * */ @TableField(fill = FieldFill.UPDATE) private LocalDateTime modifyDate;
欢迎关注Stephen,一起学习,一起成长!