主頁(yè) > 知識(shí)庫(kù) > mybatis 模糊查詢的實(shí)現(xiàn)方法

mybatis 模糊查詢的實(shí)現(xiàn)方法

熱門(mén)標(biāo)簽:電話機(jī)器人免費(fèi)嗎 好搜地圖標(biāo)注 百度地圖標(biāo)注地方備注 電銷機(jī)器人價(jià)格多少錢(qián)一臺(tái) 龍圖酒吧地圖標(biāo)注 地圖標(biāo)注圖標(biāo)素材入駐 怎么申請(qǐng)400電話申請(qǐng) 怎么辦理400電話呢 400電話申請(qǐng)什么好

mybatis 模糊查詢的實(shí)現(xiàn)方法

mybatis的逆向助手確實(shí)好用,可以省去很多編寫(xiě)常規(guī)sql語(yǔ)句的時(shí)間,但是它沒(méi)辦法自動(dòng)生成模糊查詢語(yǔ)句,但開(kāi)發(fā)中模糊查詢是必不可少的,所以,需要手動(dòng)對(duì)mapper編寫(xiě)模糊查詢功能。

這里先明確MyBatis/Ibatis中#和$的區(qū)別:

1. #將傳入的數(shù)據(jù)都當(dāng)成一個(gè)字符串,會(huì)對(duì)自動(dòng)傳入的數(shù)據(jù)加一個(gè)雙引號(hào)。如:order by #user_id#,如果傳入的值是111,那么解析成sql時(shí)的值為order by “111”, 如果傳入的值是id,則解析成的sql為order by “id”.

2. $將傳入的數(shù)據(jù)直接顯示生成在sql中。如:order by $user_id$,如果傳入的值是111,那么解析成sql時(shí)的值為order by user_id, 如果傳入的值是id,則解析成的sql為order by id.

3. #方式能夠很大程度防止sql注入。

4. $方式無(wú)法防止Sql注入。

5. $方式一般用于傳入數(shù)據(jù)庫(kù)對(duì)象,例如傳入表名.

6. 一般能用#的就別用$.

ps:在使用mybatis中還遇到![CDATA[]]>的用法,在該符號(hào)內(nèi)的語(yǔ)句,將不會(huì)被當(dāng)成字符串來(lái)處理,而是直接當(dāng)成sql語(yǔ)句,比如要執(zhí)行一個(gè)存儲(chǔ)過(guò)程。

我們的需求是對(duì)一個(gè)User進(jìn)行模糊查詢,思路是對(duì)所有基本字段(username,gender等)都跟傳入的key(關(guān)鍵字)進(jìn)行比較。

1、對(duì)UserMapper.xml編碼

 select id="queryUserByKey" parameterType="string"
    resultType="com.lqr.pojo.User">
    select * from user where uid like CONCAT('%',#{key},'%')
    or username like CONCAT('%',#{key},'%')
    or realname like CONCAT('%',#{key},'%')
    or identification like CONCAT('%',#{key},'%')
    or email like CONCAT('%',#{key},'%')
  /select>

2、對(duì)UserMapper.java編碼

ListUser> queryUserByKey(String key);

以上是本人在開(kāi)發(fā)中遇到的情景,往后有其他mybatis模糊查詢的使用再繼續(xù)記錄。

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

您可能感興趣的文章:
  • 詳解Mybatis中萬(wàn)能的Map和模糊查詢寫(xiě)法
  • MyBatis實(shí)現(xiàn)模糊查詢的幾種方式
  • Mybatis增刪改查mapper文件寫(xiě)法詳解
  • MyBatis的模糊查詢mapper.xml的寫(xiě)法講解

標(biāo)簽:汕尾 固原 內(nèi)江 撫順 浙江 廣西 溫州 防疫工作

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mybatis 模糊查詢的實(shí)現(xiàn)方法》,本文關(guān)鍵詞  mybatis,模糊,查詢,的,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mybatis 模糊查詢的實(shí)現(xiàn)方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于mybatis 模糊查詢的實(shí)現(xiàn)方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章