概述
项目中有时候有些字段可能会有这样的需求,在插入或者更新时自动填充数据,比如时间,version,密码等。mybatis-plus提供了这样的功能用来实现字段的自动填充
在实体类为相应的字段添加@TableFiled注解
为created(创建时间)添加自动填充功能,在新增时有效。为updated添加自动填充功能,在新增和修改是有效。
FiledFill提供了多种选择
public enum FieldFill {
//默认不做处理
DEFAULT,
// 新增时对字段自动填充
INSERT,
//修改时对字段自动填充
UPDATE,
//新增和修改时对字段进行自动填充
INSERT_UPDATE;
private FieldFill() {
}
}
编写类实现MetaObjectHandler接口
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
/**
* 新增时对创建时间和修改时间进行自动填充
* @param metaObject
*/
@Override
public void insertFill(MetaObject metaObject) {
Object created = getFieldValByName("created", metaObject);
if (null==created){
setFieldValByName("created",new Date(),metaObject);
}
Object updated = getFieldValByName("updated", metaObject);
if(null==updated){
setFieldValByName("updated",new Date(),metaObject);
}
}
/**
* 修改时对修改时间自动填充
* @param metaObject
*/
@Override
public void updateFill(MetaObject metaObject) {
Object updated = getFieldValByName("updated", metaObject);
setFieldValByName("updated",new Date(),metaObject);
}
}
最后
以上就是苹果刺猬为你收集整理的mybatis-plus字段自动填充功能的实现的全部内容,希望文章能够帮你解决mybatis-plus字段自动填充功能的实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复