java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > mybatisplus自动填充属性值

mybatisplus自动填充属性值的实现步骤

作者:waterkid0

MyBatis-Plus提供自动填充的功能,帮助自定设置这些字段的值,提升开发效率,本文就来介绍一下如何使用,感兴趣的可以了解一下

MetaObjectHandler: 是mybatisplus提供的一个接口,这个接口定义了在执行插入和更新操作的时候的回调方法,允许你自定义实体对象的一些属性值,比如: createTime,createBy,updateTime,updateBy 等

他有两个核心方法:

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "cc_user")
public class User {

    private Integer id;
    private String username;
    @TableField(fill = FieldFill.INSERT)
    private String createBy;
    private String updateBy;
    private Date createTime;
    private Date updateTime;
}
@Component
public class MyMetaObjectHandler implements MetaObjectHandler {
    @Override
    public void insertFill(MetaObject metaObject) {
        System.out.println("插入填充方法被调用");
        this.setFieldValByName("createBy","waterkid",metaObject);
        this.setFieldValByName("updateBy","cc",metaObject);
    }

    @Override
    public void updateFill(MetaObject metaObject) {
        System.out.println("插入填充方法被调用");
        this.setFieldValByName("createBy","waterkid",metaObject);
        this.setFieldValByName("updateBy","cc",metaObject);
    }
}

测试:

    @Test
    void contextLoads() {
   
        int hehe = userMapper.insert(User.builder().username("hehe").build());
    }

到此这篇关于mybatisplus自动填充属性值的实现步骤的文章就介绍到这了,更多相关mybatisplus自动填充属性值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:
阅读全文