mybatis的if判斷不要使用boolean值的說明
mybatis的if判斷里面最好不要使用boolean值:
mybatis會(huì)默認(rèn)把空值轉(zhuǎn)為false。所以如果遇見前段傳空值,這個(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 大大精簡了元素種類,只需學(xué)習(xí)原來一半的元素便可。
MyBatis 采用功能強(qiáng)大的基于 OGNL 的表達(dá)式來淘汰其它大部分元素。
<!-- <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值的說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. mysql數(shù)據(jù)表的基本操作之表結(jié)構(gòu)操作,字段操作實(shí)例分析2. 如何實(shí)現(xiàn)MySQL數(shù)據(jù)庫的備份與恢復(fù)3. Oracle災(zāi)難防護(hù)的關(guān)鍵技術(shù)4. Windows下不能啟動(dòng)mysql服務(wù)--錯(cuò)誤總結(jié)5. 整理Oracle數(shù)據(jù)庫碎片6. DB2數(shù)據(jù)庫創(chuàng)建存儲(chǔ)過程時(shí)遇到的錯(cuò)誤現(xiàn)象7. MySQL中InnoDB和MyISAM類型的差別8. 巧用SQL語言在ACCESS數(shù)據(jù)庫中批量替換內(nèi)容9. 什么是Access數(shù)據(jù)庫10. 搭建小型access數(shù)據(jù)庫實(shí)錄

網(wǎng)公網(wǎng)安備