mybatis中判斷等於字符串的條件如何寫


mybatis中進行條件判斷字符串時這樣寫是不對的,雖然此寫法不會直接引起異常但會造成無法判斷從而忽略該條件表達式

<if test="userStatus!=null and userStatus!= 'XXX'">

需要將單雙引號交換一下位置,正確寫法如下:

<if test='userStatus!=null and userStatus!= "XXX"'>

或者

<if test="userStatus!=null and yanan != 'userStatus'.toString()">

因為mybatis映射文件,是使用的ognl表達式,ognl是java語言(強類型語言),會把‘X’解析成字符,而不是字符串。

因此,進行條件判斷時也可使用java.lang.String的方法,如下:

<if test='userStatus.indexOf(",") != -1'>

--自己測試過(以下語句寫法會造成這個判斷條件根本不會加上)---重要

<if test="userStatus =='1'and userStatus == '2' ">
    AND Status = #{userStatus}
</if>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM