mybatis中BigDecimal中的0存为null的坑及解决
目录
- myBATis中BigDecimal的0存为null的坑
- 问题点
- 最终修改方法
- 经过查询得出结论
- 最后
mybatis中BigDecimal的0存为null的坑
问题点
做mybatis的插入和修改操作时,Java中类型为Bigdicemal时,且值为0时,存入到数据库中的值为null,而不是0,其它的非0值正常
部分代python码如下:
有问题的属性
可以看到是 Begdecimal 类型,对应查javascript出来的日志如下:
可以看到,插入时存的是0, 但是入口后进行查询变成了null
最终修改方法
把 去掉bigDecimalNum !=''后正常
经过查询得出结论
mybatis中的类型判断是弱类型,编程而不是java中的强类型。
mybatis会自动把BigDecimal类型转为string,即0变为null啦
同样的,Integer
类型如果这样js判断也会有这个问题
最后
以上为个人经验,希望能给大家php一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论