Mybatis3 if判断字符串变态写法

时间:2021-10-24 13:26:07

mybatis我们常用的判空操作,出现了常见问题:

错误写法:if test=”status == ‘Y'”

结果:抛异常NumberFormatException异常!提示内容非常少,看不出问题在哪里!

正确写法:if test='status == “y”'

还可以这样写:if test=”status == ‘y'.toString()”

或者可以这样写 if test ='status==”Y”'

补充:Mybatis3 判断字符串

在使用Mybatis3过程中发现一个奇怪的问题,判断字符串必须要用指定的格式

mapper内如下:

?
1
2
3
4
5
6
7
8
<choose>
 <when test="regOrSign != null and regOrSign == 'R' ">
 ORDER BY a.registrationDate DESC
 </when>
 <otherwise>
 ORDER BY a.signDate DESC
 </otherwise>
</choose>

报错:

?
1
2
3
### Error querying database. Cause: java.lang.NumberFormatException: For input string: "R" ### Cause: java.lang.NumberFormatException: For input string: "R"] with root cause java.lang.NumberFormatException: For input string: "R"
test=&quot;regOrSign != null and regOrSign == 'R' &quot;
-> test='regOrSign != null and regOrSign == "R" '

改成这样就可以了,这个问题同样适用if标签

以上所述是小编给大家介绍的Mybatis3 if判断字符串变态写法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!