• 解决MybatisPlus修改时空字段不修改问题


    今天遇到了一个问题,在更新数据时,MybatisPlus不会进行修改属性为空的数据表字段。

    解决办法:

    只需要在实体类的属性上加一行注释即可

    /**
     * 姓名
    */
    @TableField(fill = FieldFill.UPDATE)
    private String name;
    
    
    

    这行注释的意思是:在name这个属性执行修改时,将自动填充一个值(默认为null),即将字段修改为空,而不是不做修改。

    比较老的解决方式:

    在用mybatis-plus封装的updateById方法来更新数据时,想把一个字段设置为null值,但是发现更新后数据没有为null还是原来的值,这是因为mybatis-plus在更新的时候做了null判断,默认不更新为null的传参。

    2 解决方法
    在实体类对应的字段上加注解@TableField(strategy=FieldStrategy.IGNORED),忽略null值的判断,例如

    @TableField(strategy = FieldStrategy.IGNORED)
    private String name;
    当@TableField注解有多个值时

    @TableField(value = "user_name", strategy = FieldStrategy.IGNORED)
    private String userName;

  • 相关阅读:
    论文笔记4
    论文笔记3
    论文笔记2
    论文笔记1
    论文笔记
    AFG与AWG的比较
    Linux下“有线线缆被拔出”问题的解决
    python生成excel格式座位表
    PythonTip--一马当先--bfs
    python pygame--倒计时
  • 原文地址:https://www.cnblogs.com/maohuidong/p/11897591.html
Copyright © 2020-2023  润新知