mybatisplus处理公共字段
前提:引入mybatisplus的开发jar,项目已经集成了mybatisplus
1.定义公共字段
@Data
public abstract class BaseTableField implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date createTime;
/**
* 修改时间
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
}
2.定义配置类
@Configuration
public class MybatisPlusConfig {
@Bean
public MetaObjectHandler metaObjectHandler(){
return new MetaObjectHandler() {
@Override
public void insertFill(MetaObject metaObject) {
Object originalObject = metaObject.getOriginalObject();
if (originalObject instanceof BaseTableField) {
this.strictInsertFill(metaObject, "createTime", Date.class, new Date());
this.strictInsertFill(metaObject, "updateTime", Date.class, new Date());
}
}
@Override
public void updateFill(MetaObject metaObject) {
Object originalObject = metaObject.getOriginalObject();
if (originalObject instanceof BaseTableField) {
((BaseTableField) originalObject).setUpdateTime(null);
this.strictUpdateFill(metaObject, "updateTime", Date.class, new Date());
}
}
};
}
}
3.使用操作
构建实体类需要extends BaseTableField,然后在进行数据库操作insert和update时都会自动对createTime和updateTime字段进行赋值。
MyBatisPlus公共字段处理
本文介绍如何在MyBatisPlus中实现公共字段(如创建时间和更新时间)的自动填充。通过定义抽象基类`BaseTableField`并结合自定义配置类`MybatisPlusConfig`来实现这一目标。
1932

被折叠的 条评论
为什么被折叠?



