mybatis中 Bigdecimal的坑

  记录最近在开发过程中遇到了一个问题。

 我想将表中taxes字段(bigdecimal 类型)的值修改为0,于是通过前台传值,后台接受,然后通过mybatis 去进行修改,发现表中的值并没有发生改变。

  mybatis 中修改sql 如下图

 难道是taxes 传值没有成功?后台没接收到?

于是打开debug调试,发现后台是接受到了taxes值的,不知道为什么到了mybatis就没了

我试着把taxes设为 1 ,然后去修改,发现能修改成功。我猜想mybatis中bigdecimal 将0 当作null给处理掉了。

  那就改变 mybatis中update的sql 语句吧,如下图,把if条件给去了。

然后重试,修改成功。

但是 我不知道有什么办法去区分mybatis 中 bigdecimal类型的字段没传值与传值为0 的区别0.0。

希望路过的大神们能指点指点。【抱拳】【抱拳】

猜你喜欢

转载自www.cnblogs.com/always-allwith/p/9642403.html
今日推荐