在mybatis框架中進行參數非空或者字符串比較判斷時:
<if test = " mnyType == '1' "> 因為mybatis是用OGNL表達式解析的,在OGNL表達式中 ‘1’ 會被解析成字符串,又因為Java是強類型的,char和string會導致不相等,所以 if 標簽中的SQL不會被解析。
因此單個字符要寫到雙引號里面或者使用 .toString() 才可以,比如正確的寫法如下
<if test = "mnyType == '1'.toString() " 或者<if test = ' mnyType == "1" '>