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ù),可以用如下寫(xiě)法: --><if test='username' != null> username=#{username, jdbcType=VARCHAR}</if> <!-- 或者 --><if test='username != null and ’John’ == username'> username=#{username, jdbcType=VARCHAR}</if> <!-- 但是,對(duì)于非字符串類型的參數(shù)(如Boolean),就需要寫(xiě)成: --><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. SQL Server自動(dòng)備份無(wú)法刪除過(guò)期的備份文件2. Sqlserver之死鎖查詢以及批量解鎖的實(shí)現(xiàn)方法3. Oracle的PDB數(shù)據(jù)庫(kù)創(chuàng)建DIRECTORY時(shí)遇到ORA-65254問(wèn)題及解決方法4. 詳解MySQL中表的內(nèi)外連接5. DB2中的數(shù)據(jù)值加密(1)6. 磁盤(pán)空間滿了之后MySQL會(huì)怎樣7. SQLite3數(shù)據(jù)庫(kù)的介紹和使用教程(面向業(yè)務(wù)編程-數(shù)據(jù)庫(kù))8. 總結(jié)幾種MySQL中常見(jiàn)的排名問(wèn)題9. Microsoft Office Access將單元格效果設(shè)置為凸起的方法10. Windows10系統(tǒng)中Oracle完全卸載正確步驟
