本文使用的版本:mybatis-plus 3.0.7.1,不同版本填充处理器可能有所不同!
(低版本有的是 extends MetaObjectHandler 而不是 implements MetaObjectHandler 来创建填充处理器)
compile("com.baomidou:mybatis-plus-boot-starter:3.0.7.1")
一、创建填充处理器:MetaObjectHandlerConfig
@ComponentpublicclassMetaObjectHandlerConfigimplements MetaObjectHandler {
@Override
publicvoid insertFill(MetaObject metaObject) {
Date now =new Date();
setFieldValByName("createDate", now, metaObject);
}
@Override
publicvoid updateFill(MetaObject metaObject) {
Date now =new Date();
this.setFieldValByName("modifyDate", now, metaObject);
}
二、配置填充处理器:
publicMybatisSqlSessionFactoryBean 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)
privateLocalDateTime modifyDate;