码迷,mamicode.com
首页 > 编程语言 > 详细

springboot调整MybatisPlus全局的验证策略

时间:2020-03-16 23:57:24      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:ring   方式   pat   one   orm   str   更新字段   spl   全局   

由于Mybatis plus默认的更新策略是NOT_NULL:非 NULL;即通过接口更新数据时数据为NULL值时将不更新进数据库。
所以Mybatis plus通过updateById(XX)更新数据,当用户有更新字段为空字符串 或者 null 的需求时,需要对 FieldStrategy 策略进行调整。

FieldStrategy 有三种策略:

  • IGNORED:0 忽略
  • NOT_NULL:1 非 NULL,默认策略
  • NOT_EMPTY:2 非空

方式一:调整全局的验证策略(修改application配置文件)

mybatis-plus:
  global-config:
    #字段策略 0:"忽略判断",1:"非 NULL 判断",2:"非空判断"
    field-strategy: 0

缺点:这样做会对所有的字段都忽略判断,如果一些字段不想要修改,但是传值的时候没有传递过来,就会被更新为null

方式二:调整字段验证注解(根据具体情况,在需要更新的字段中调整验证注解 @TableField,如忽略判断:)

    // 生日
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    @DateTimeFormat(pattern = DateUtils.SHORT_TIME_FORMAT)
    @JsonFormat(pattern = DateUtils.SHORT_TIME_FORMAT, timezone = "GMT+8")
    private Date birthday;

springboot调整MybatisPlus全局的验证策略

标签:ring   方式   pat   one   orm   str   更新字段   spl   全局   

原文地址:https://www.cnblogs.com/jiefu/p/12501460.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!