关于mybatis-plus字段更新策略的颗粒度问题
1.三个可以控制字段更新策略的地方及颗粒度区分
1.1 mybtis-plus全局配置
1.2 entity的注解
1.3 baseMapper.update方法的指定set
注意:第三种更新时必须对空更新的字段做判空处理,否则出现两次set sql拼接出错
2.如何选择三种更新策略
全局策略:可以理解为一种兜底策略,一般设置notEmpty或者notNull来控制全局的“不传时不更新”;
entity注解策略:有全局策略兜底的情况下,一般不用特意增加注解,除非确定某一个字段再任何代码块只要空或空字符串都要更新
baseMapper.update方法的指定set策略:单独处理 颗粒度做到最细,排除了其他代码块传空或空字符串意外更新的问题
3.最佳体验
全局notEmpt更新+entity不做处理+特殊规则细化处理