問題:今天在寫一個普通的查詢,條件查詢狀态為0時,查詢總是異常,debug擷取的參數都沒問題,但查詢後的結果是查詢所有的資料
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiQDOxEzX3xCZlhXam9VbsUmepNXZy9CXwJWZ3xCdh1mcvZ2Lc1zaHRGcWdUYuVzVa9GczoVdG1mWfVGc5RHLwIzX39GZhh2csATMflHLwEzX4xSZz91ZsAzMfRHLGZkRGZkRfJ3bs92YskmNhVTYykVNQJVMRhXVEF1X0hXZ0xiNx8VZ6l2cssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLyIjMzEWYjhTMmFmNwcTOyYzX1UjNyQTMxAzLcZDMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
sql日志:select * from mobile_info WHERE LIMIT ?
原因:當資料類型設定為Integer,傳入的值為0時,在mybatis會将其轉化為空字元串,進而無法進入if标簽中進行查詢。在資料庫可視化工具中,當輸入的batchStatus=0或者空字元串查詢的結果是相同的。 當去掉mapper中的sql語句
and ispType != ''
時,就可以查詢了(即使在初始化查詢的時候,也不受影響,因為初始加載頁面各個條件預設為null)