我们在利用mybatis做新增或者更新的时候,总是会记录创建人、创建时间、更新人、更新时间等字段
这些放在业务代码里面,其实看起来并不好看。mybatis有一个好的方法可以帮助我们自动的生成这些字段的信息,然后入库。
mybatis的一个默认参数处理器
DefaultParameterHandler
它有一个默认子类
MybatisDefaultParameterHandler
结构是这样的
注意这里有个insertFill和updateFill,其实就是我们需要的东西。利用他们可以在新增和更新的时候自动注入创建人创建时间更新人更新时间等字段。
实现方式也简单
1、定义一个类实现MetaObjectHander接口,重写insertFill和updateFill方法
@Component
public class FieldMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
}
@Override
public void updateFill(MetaObject metaObject) {
}
}
2、写具体的实现,示例: