Mybatis使用總結(jié)
1. Mapped Statements collection does not contain value for *.executeSql
原因:xxMapper.xml配置文件和java接口,方法名不匹配。
2. 動(dòng)態(tài)傳入純sql執(zhí)行:
配置:
注意:默認(rèn)的編譯方式改了(預(yù)編譯改為非預(yù)編譯),并且參數(shù)接受使用${XXX}方式。
3. 對(duì)與CLOB字段的處理:
configuration.xml中配置:
查詢時(shí):
AND FCONTENT = #{fcontent,jdbcType=CLOB,typeHandler="org.springframework.orm.ibatis.support.ClobStringTypeHandler"}
插入和更新時(shí):使用上述配置
4. 需要在xml文件中使用<號(hào)的時(shí)候如何處理:
一種方法:在某一個(gè)類中定義一個(gè)屬性,使其值為'<',然后parameterType指定為這個(gè)類,其符號(hào)用其代替。比如我有一個(gè)Page類,定義一個(gè)屬性 startOperator = "<=" 然后調(diào)用:${page.startOperator}
另一種方法:采用轉(zhuǎn)義字符直接替換<號(hào)為 < >號(hào)為>即可。
注:${name},官方解釋這種方式,Mybatis不會(huì)修改或者轉(zhuǎn)義字符串。但是這樣不安全,存在潛在的注入攻擊。因此不應(yīng)該允許用戶直接輸入此類字段,或者通常自行轉(zhuǎn)義并檢查。
本文僅代表作者觀點(diǎn),版權(quán)歸原創(chuàng)者所有,如需轉(zhuǎn)載請(qǐng)?jiān)谖闹凶⒚鱽?lái)源及作者名字。
免責(zé)聲明:本文系轉(zhuǎn)載編輯文章,僅作分享之用。如分享內(nèi)容、圖片侵犯到您的版權(quán)或非授權(quán)發(fā)布,請(qǐng)及時(shí)與我們聯(lián)系進(jìn)行審核處理或刪除,您可以發(fā)送材料至郵箱:service@tojoy.com





