NutzCN Logo
精华 Integer 0 updateIgnoreNull 不成功
发布于 2150天前 作者 伴读小书童 2256 次浏览 复制 上一个帖子 下一个帖子
标签:

private Integer regularMoney;
当regularMoney=0;
updateIgnoreNull更新没有保存成功,数据库依旧是之前的值。
非0值都可以保存成功

15 回复
 public Object addDo(@Param("..")Store_freight store_freight, HttpServletRequest req) {
            store_freight.setRegularMoney(MoneyUtil.yuanToFeni(store_freight.getRegularMoney_s()));
           ......
            if(Strings.isNotBlank(store_freight.getId())){
                   dao().updateIgnoreNull(store_freight);
           }

Store_freight 中private Integer regularMoney;
值为0保存不成功(数据库值没有变化),非0值可以保存成功

看sql,我猜sql里面就没这个字段

有,问了蛋蛋他也遇到过,应该是bug了

我搞错了,0最后消失在sql中,为什么nutDao.updateIgnoreNull 会忽略0呢?

不是忽略0,是忽略null

打印一下看看是不是null,目测就是null

因为方法名就叫 updateIgnoreNull

对象中字段的确赋值是0,不是null

不太可能,待我写个testcase试试

看来是我的锅

Long 0 updateIgnoreNull 更新也不成功,新版本好了,原来线上的项目爆出了这个bug

添加回复
请先登陆
回到顶部