zoukankan      html  css  js  c++  java
  • MyBatis-Plus自动填充功能失效导致原因

    1:先检查 字段有没有加上注解  @TableField(fill = FieldFill.INSERT_UPDATE)

    @TableField(fill = FieldFill.INSERT_UPDATE)
        private Date updatedTime;

    2:有没有实现   MetaObjectHandler   接口  ,并且加入到 Spring 容器中

    @Component
    public class MyMetaObjectHandler implements MetaObjectHandler {
    
        @Override
        public void insertFill(MetaObject metaObject) {
            this.strictInsertFill(metaObject, "createdTime", Date.class, new Date());
            this.strictInsertFill(metaObject, "updatedTime", Date.class, new Date());
        }
    
        @Override
        public void updateFill(MetaObject metaObject) {
            this.strictUpdateFill(metaObject, "updatedTime", Date.class, new Date());
        }
    }

     3: @Component 是否扫码注入进去

    4: baseMapper.update(null,Wrappers.<Users>lambdaUpdate())  这样的写法是没有拦截到的,所以无效

    xml 写的也无效

    @update 注解也无效

            baseMapper.update(null, Wrappers.<Users>lambdaUpdate()
                    .set(Users::getConcernType,2)
                    .eq(Users::getId,userId));

    应该改为 

            baseMapper.update(users, Wrappers.<Users>lambdaUpdate()
                    .set(Users::getConcernType,2));
    或者
            Users users = new Users();
            users.setId(userId);
            users.setConcernType(1);
            baseMapper.updateById(users);

    这样可以拿到表相关信息,会执行我们的   MetaObjectHandler  实现接口

  • 相关阅读:
    auto关键字
    关闭vs的编译警告
    windows C++删除非空文件夹
    vs相同变量高亮显示
    梯度下降算法到logistic回归
    ubuntu 按键替换 Control_R to Left
    git 删除分之以及删除文件夹
    迄今为止计算机视觉领域超有实力的研究人物主页
    DeepLearning——CNN
    利用积分图进行均值滤波
  • 原文地址:https://www.cnblogs.com/blogspring/p/14191740.html
Copyright © 2011-2022 走看看