mybatis我們常用的判空操作,出現了常見問題:
錯誤寫法: if test=”status == 'Y'”
結果:拋異常NumberFormatException異常!提示內容非常少,看不出問題在哪裡!
正確寫法: if test='status == “y”'
還可以這樣寫: if test=”status == 'y'.toString()”
或者可以這樣寫if test ='status==”Y”'
補充:Mybatis3 判斷字符串
在使用Mybatis3過程中發現一個奇怪的問題,判斷字符串必須要用指定的格式
mapper內如下:
<choose> <when test="regOrSign != null and regOrSign == 'R' "> ORDER BY a.registrationDate DESC </when> <otherwise> ORDER BY a.signDate DESC </otherwise></choose>
報錯:
### 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=regOrSign != null and regOrSign == 'R' -> test='regOrSign != null and regOrSign == "R" '
改成這樣就可以了,這個問題同樣適用if標籤
以上所述是小編給大家介紹的Mybatis3 if判斷字符串變態寫法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!