zoukankan      html  css  js  c++  java
  • mybatisplus添加字段填充

    使用mybatisplus开发时,有一些字段是通用的,为避免每次都要重复写代码,可以使用字段填充功能,包括 INSERT和UPDATE

      一、在所需要的实体类的字段上添加

    @TableField(value = "F_CREATORUSERID",fill = FieldFill.INSERT)
    private String creatorUserId;

    或者

    @TableField(value = "F_LASTMODIFYTIME",fill = FieldFill.UPDATE)
    private Date lastModifyTime;
    二、添加完之后我们需要建个类继承MetaObjectHandler来实现字段填充
    @Component
    public class MybatisPlusMetaObjectHandler implements MetaObjectHandler {
    
    
        private UserProvider userProvider;
    
        @Override
        public void insertFill(MetaObject metaObject) {
            userProvider = SpringContext.getBean(UserProvider.class);//此处是为获取用户信息而添加的
            UserInfo userInfo=userProvider.Get();
            this.setFieldValByName("creatorUserId", userInfo.getUserId(),metaObject);
            this.setFieldValByName("creatorTime", new Date(),metaObject);
        }
    
        @Override
        public void updateFill(MetaObject metaObject) {
            userProvider = SpringContext.getBean(UserProvider.class);
            UserInfo userInfo=userProvider.Get();
            this.setFieldValByName("lastModifyTime", new Date(),metaObject);
            this.setFieldValByName("lastModifyUserId", userInfo.getUserId(),metaObject);
        }
    
    
    }

    三、需要在mybatisconfig中添加全局配置GlobalConfig
    //全局配置
    GlobalConfig globalConfig  = new GlobalConfig();
    //配置填充器
    globalConfig.setMetaObjectHandler(new MybatisPlusMetaObjectHandler());
    bean.setGlobalConfig(globalConfig);



    添加完这个就可以实现自动填充了
     
    
    


  • 相关阅读:
    函数(方法
    变量
    常量
    文档注释与多行注释的区别
    标识符
    [置顶] WebService学习总结(3)——使用java JDK开发WebService
    WebService学习总结(2)——WebService是什么?
    [置顶] WebService学习总结(1)——WebService相关概念
    [置顶] WebService学习总结(1)——WebService相关概念
    Java基础学习总结(38)——Lombok的使用和原理
  • 原文地址:https://www.cnblogs.com/jsfh/p/13398116.html
Copyright © 2011-2022 走看看