在mbatis中使用Xml配置sql語句時,出現了這樣一個問題。當我傳入的參數爲0去作判斷時,mybatis會把參數0當成是空字符串去判斷而引發查詢結果錯誤。下面是我以前配置的sql語句:sql
<if test="overdueDayTypes!=null and overdueDayTypes!=''">
<if test="overdueDayTypes == 0">
<![CDATA[and bcr.overdue_days<30]]>
</if>
<if test="overdueDayTypes == 1">
<![CDATA[and bcr.overdue_days>=30 and bcr.overdue_days<=90]]>
</if>
<if test="overdueDayTypes == 2">
<![CDATA[and bcr.overdue_days>90]]>
</if>
</if>
對於這個問題,有兩種解決辦法。mybatis
1.當傳入的參數有0時,只判斷!=null便可。字符串
2.將0轉化爲String類型,就能夠解決這個問題。test
下面是我修改後的sql語句:配置
<if test="overdueDayTypes!=null">
</if>sql語句