mybatis的if判斷不要使用boolean值的說明
阿新 • • 發佈:2020-11-25
mybatis的if判斷裡面最好不要使用boolean值:
mybatis會預設把空值轉為false。所以如果遇見前段傳空值,這個欄位在mybatis裡面永遠就是false了,
可以使用數字型別代替,但是不要使用0作為引數;
補充知識:【MyBatis】<if test=""></if>標籤的條件判斷(Boolean型別引數)
在MyBatis 中,動態 SQL 元素和 JSTL 或基於類似 XML 的文字處理器相似。
在 MyBatis 3 之前的版本中,有很多元素需要花時間瞭解。而MyBatis 3 大大精簡了元素種類,只需學習原來一半的元素便可。
MyBatis 採用功能強大的基於 OGNL 的表示式來淘汰其它大部分元素。
<!-- <if test=" "></if>標籤的使用例項--> <select id="findActiveBlogWithTitleLike" resultType="Blog"> SELECT * FROM BLOG WHERE state = ‘ACTIVE' <if test="title != null"> AND title like #{title,jdbcType=VARCHAR} </if> </select>
<!-- <if test=""></if>標籤 --> <!-- 對於字串型別引數,可以用如下寫法: --> <if test="username" != null> username=#{username,jdbcType=VARCHAR} </if> <!-- 或者 --> <if test="username != null and 'John' == username"> username=#{username,jdbcType=VARCHAR} </if> <!-- 但是,對於非字串型別的引數(如Boolean),就需要寫成: --> <if test="flag != null and 'true'.toString() == flag.toString()"> flage=#{flag,jdbcType=BOOLEAN} </if>
以上這篇mybatis的if判斷不要使用boolean值的說明就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。