mybatis if test判断BigDecimal遇到的坑及解决
作者:卡卡的喵 时间:2022-12-06 09:44:24
mybatis if test判断BigDecimal遇到的坑
<update id="test" parameterType="cn.test.Demo">
update test
<trim prefix="set" suffixOverrides=",">
<if test="bigDecimalValue != null and bigDecimalValue != ''">
bigDecimal_value = #{bigDecimalValue},
</if>
</trim>
WHERE
id = #{id}
</update>
以上语句变量bigDecimalValue是BigDecimal类型的,传入的值是0,
但打印出来的语句是
update test WHERE id = ?
竟然没有set变量,导致一直报sql错误的异常。
后来才发现,如果要判断BigDecimal类型是否为空,只要判断是否为null就可以了,不要判断是否为空字符串,系统会自动把0当成了空字符串。
造成这样错误的原因应该是复制了之前的代码,而之前的代码是判断字符类型是否为空。
mybatis if test 报错,无效
除却.toString能够对空字符和数值操作,来避免类型对比错误问题外
还可能在语法上报错,
先上图(这里说SQL格式有问题)
源码是这样的
(正常在SQL工具中,“SELECT * FROM `product` where”查询语句是没问题的)
但在这里会报错。
所以小改一下!
就解决了!
来源:https://blog.csdn.net/kouwoo/article/details/121979821
标签:mybatis,if,test,BigDecimal
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java中Controller、Service、Dao/Mapper层的区别与用法
2022-09-12 15:14:03
c# 模拟串口通信 SerialPort的实现示例
2023-09-03 22:19:50
![](https://img.aspxhome.com/file/2023/3/87023_0s.png)
Android自定义wheelview实现滚动日期选择器
2021-11-22 16:04:19
![](https://img.aspxhome.com/file/2023/6/129036_0s.png)
C#实现DVD借出归还管理系统
2021-07-02 06:55:38
完美解决docx4j变量替换的问题
2021-08-19 21:00:25
![](https://img.aspxhome.com/file/2023/5/95975_0s.png)
Intellij IDEA 2018配置Java运行环境的方法步骤
2023-06-08 09:56:50
![](https://img.aspxhome.com/file/2023/6/62456_0s.png)
初学者Android studio安装图文详解
2022-08-06 07:22:12
![](https://img.aspxhome.com/file/2023/6/80886_0s.png)
如何基于FTP4J实现FTPS连接过程解析
2022-09-19 21:51:35
![](https://img.aspxhome.com/file/2023/5/80315_0s.jpg)
Java中Map实现线程安全的3种方式
2021-10-07 21:23:36
详解Java高级特性之反射
2021-06-09 14:01:06
C#实现GridView导出Excel实例代码
2023-10-29 04:31:09
UnityShader使用速度映射图实现运动模糊
2021-11-23 03:53:21
![](https://img.aspxhome.com/file/2023/1/71761_0s.jpg)
Android使用OkHttp发送post请求
2022-12-04 13:24:57
JavaFX Metro UI 和 开发库使用简介
2021-12-11 19:01:39
![](https://img.aspxhome.com/file/2023/1/129191_0s.gif)
Android解决ScrollView下嵌套ListView和GridView中内容显示不全的问题
2023-09-26 23:32:58
![](https://img.aspxhome.com/file/2023/1/97861_0s.png)
Java C++ 算法题解拓展leetcode670最大交换示例
2022-05-18 23:31:51
![](https://img.aspxhome.com/file/2023/2/61122_0s.jpg)
如何利用反射构建元数据查看器
2021-05-27 00:11:05
Android仿考拉全局滑动返回及联动效果的实现方法
2021-06-01 03:41:03
![](https://img.aspxhome.com/file/2023/3/126763_0s.gif)
Java Git Commit Message使用规范
2023-03-15 07:50:43
![](https://img.aspxhome.com/file/2023/4/94354_0s.webp)
如何使用ByteArrayOutputStream下载文件
2021-07-29 11:32:45