mybatis中的if?test判斷入?yún)⒌闹祮栴}
mybatis if test判斷入?yún)⒌闹?/h2>
1.第一種判斷方式
<if test=' requisition != null and requisition == "Y" '> ? ?AND 表字段 = #{requisition} </if>
2.第二種判斷方式
<if test=" requisition != null and requisition == 'Y'.toString() "> AND 表字段 = #{requisition} </if>
if test動態(tài)判斷數(shù)字時出現(xiàn)的錯誤
mybatis中if test判斷數(shù)字
在實現(xiàn)搜索功能時碰到的錯誤,很多時候我們會在數(shù)據(jù)庫中使用一個字段來作為狀態(tài)保存,如:0=男,1=女;0=禁止,1=啟用等。
無論我選擇停用、還是啟用,都將整個表格的數(shù)據(jù)顯示出來,沒有起到篩選的作用。
通過排除,找到了導致問題的代碼:
<select id="queryAllByLimit" resultMap="SystemMenuMap"> select id, pid, title, icon, href, sort, status from system_menu <where> <if test="systemMenu.status != null and systemMenu.status != '' "> and status = #{systemMenu.status} </if> </where> </select>
改為:
<select id="queryAllByLimit" resultMap="SystemMenuMap"> select id, pid, title, icon, href, sort, status from system_menu <where> <if test="systemMenu.status != null"> and status = #{systemMenu.status} </if> </where> </select>
原因:
<if test="systemMenu.status != null and systemMenu.status != '' ">
只對判斷String類型的字符串時起作用,由于status是Integer類型,判斷條件不成立,沒起到作用。如:當傳入的值是1時,’1’會被解析成字符。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
永久解決 Intellij idea 報錯:Error :java 不支持發(fā)行版本5的問題
這篇文章主要介紹了永久解決 Intellij idea 報錯:Error :java 不支持發(fā)行版本5的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02Jmeter?BlazeMeter實現(xiàn)web錄制過程
BlazeMeter是一款與Apache JMeter兼容的chrome插件,采用BlazeMeter可以方便的進行流量錄制和腳本生成,作為接口測試腳本編寫的一個基礎,這篇文章主要介紹了Jmeter?BlazeMeter實現(xiàn)web錄制,需要的朋友可以參考下2021-12-12Spring Boot Actuator監(jiān)控端點小結
這篇文章主要介紹了Spring Boot Actuator監(jiān)控端點小結,需要的朋友可以參考下2017-06-06