mybatis.xml中有if判斷條件判斷參數不為空時,賦值為0的Integer參數被MyBatis判斷為空,因此不執行<if test="param != null and param != ''"></if>的SQL。
所以在做項目時一定要注意,用到MyBatis時,避免用0來做值。
解決方法:
<if test="status !=null and (status!='' or status == 0)"> AND t1.`STATUS` = #{status} </if> 加上or后面的一段就可以了。
或者直接把status!=''去掉。
參考:
http://blog.csdn.net/qing_gee/article/details/50518795
http://blog.csdn.net/qq_25667339/article/details/44156049/(以上內容轉自此篇文章)