mybatis的if判斷不要使用boolean值的說(shuō)明
mybatis的if判斷里面最好不要使用boolean值:
mybatis會(huì)默認(rèn)把空值轉(zhuǎn)為false。所以如果遇見(jiàn)前段傳空值,這個(gè)字段在mybatis里面永遠(yuǎn)就是false了,
可以使用數(shù)字類型代替,但是不要使用0作為參數(shù);
補(bǔ)充知識(shí):【MyBatis】<if test=''></if>標(biāo)簽的條件判斷(Boolean類型參數(shù))
在MyBatis 中,動(dòng)態(tài) SQL 元素和 JSTL 或基于類似 XML 的文本處理器相似。
在 MyBatis 3 之前的版本中,有很多元素需要花時(shí)間了解。而MyBatis 3 大大精簡(jiǎn)了元素種類,只需學(xué)習(xí)原來(lái)一半的元素便可。
MyBatis 采用功能強(qiáng)大的基于 OGNL 的表達(dá)式來(lái)淘汰其它大部分元素。
<!-- <if test=' '></if>標(biāo)簽的使用實(shí)例--> <select resultType='Blog'> SELECT * FROM BLOG WHERE state = ‘ACTIVE’ <if test='title != null'> AND title like #{title,jdbcType=VARCHAR} </if></select>
<!-- <if test=''></if>標(biāo)簽 --> <!-- 對(duì)于字符串類型參數(shù),可以用如下寫法: --><if test='username' != null> username=#{username, jdbcType=VARCHAR}</if> <!-- 或者 --><if test='username != null and ’John’ == username'> username=#{username, jdbcType=VARCHAR}</if> <!-- 但是,對(duì)于非字符串類型的參數(shù)(如Boolean),就需要寫成: --><if test='flag != null and ’true’.toString() == flag.toString()'> flage=#{flag, jdbcType=BOOLEAN}</if>
以上這篇mybatis的if判斷不要使用boolean值的說(shuō)明就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. MySql中sql語(yǔ)句執(zhí)行過(guò)程詳細(xì)講解2. 根據(jù)IP跳轉(zhuǎn)到用戶所在城市的實(shí)現(xiàn)步驟3. Sql在多張表中檢索數(shù)據(jù)的方法詳解4. SQL語(yǔ)句中的ON DUPLICATE KEY UPDATE使用5. Windows系統(tǒng)徹底卸載SQL Server通用方法(推薦!)6. MYSQL(電話號(hào)碼,身份證)數(shù)據(jù)脫敏的實(shí)現(xiàn)7. MySQL5.7 mysqldump備份與恢復(fù)的實(shí)現(xiàn)8. SQL Server數(shù)據(jù)庫(kù)創(chuàng)建表及其約束條件的操作方法9. Mysql分組排序取每組第一條的2種實(shí)現(xiàn)方式10. mysql查詢的控制語(yǔ)句圖文詳解
