詳解Mybatis中萬(wàn)能的Map和模糊查詢(xún)寫(xiě)法
1、萬(wàn)能的Map
假設(shè),我們的實(shí)體類(lèi),或者數(shù)據(jù)庫(kù)中的表,字段或參數(shù)過(guò)多,我們接口參數(shù)以前用的是實(shí)體類(lèi),現(xiàn)在考慮使用下Map!
接口:
//萬(wàn)能的Map int addUser2(Map<String,Object> map);
mapper.xml:
<!--Map中的key--> <insert id="addUser2" parameterType="map"> insert into mybatis.user (id,name,pwd) values (#{userid},#{userName},#{passWord}); </insert>
測(cè)試方法:
@Test public void addUser2(){ SqlSession sqlSession = MybatisUtils.getSqlSession(); UserMapper mapper = sqlSession.getMapper(UserMapper.class); Map<String, Object> map = new HashMap<>(); map.put("userid",5); map.put("userName","Hello"); map.put("passWord","2222333"); mapper.addUser2(map); sqlSession.commit(); sqlSession.close(); }
現(xiàn)在通過(guò)Map傳遞參數(shù),直接再sql中取出key即可!
而以前對(duì)象傳遞參數(shù),需要再sql取對(duì)象相對(duì)應(yīng)的屬性名才行!
而以前對(duì)象傳遞參數(shù),需要再sql取對(duì)象相對(duì)應(yīng)的屬性名才行!
只有一個(gè)基本類(lèi)型參數(shù)的情況下,可以直接在sql中取到!(parameterType不寫(xiě)都可以)
反正多個(gè)參數(shù)用Map,或者注解(后面記錄的文章會(huì)說(shuō)到)!
2、模糊查詢(xún)寫(xiě)法
模糊查詢(xún)?cè)趺磳?xiě)?
1.java代碼執(zhí)行的時(shí)候傳遞通配符% %(比較安全,能防止sql注入,推薦)
List<User> userList = mapper.getUserLike("%李%");
2.在sql拼接中使用通配符!(不能防sql注入)
<select id="getUserLike" resultType="com.kuang.pojo.User"> select * from mybatis.user where name like "%"#{value}"%" </select>
以上就是詳解Mybatis中萬(wàn)能的Map和模糊查詢(xún)寫(xiě)法的詳細(xì)內(nèi)容,更多關(guān)于Mybatis Map和模糊查詢(xún)寫(xiě)法的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
使用spring aop統(tǒng)一處理異常和打印日志方式
這篇文章主要介紹了使用spring aop統(tǒng)一處理異常和打印日志方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06Spring Data JPA中的動(dòng)態(tài)查詢(xún)實(shí)例
本篇文章主要介紹了詳解Spring Data JPA中的動(dòng)態(tài)查詢(xún)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04java遞歸與非遞歸實(shí)現(xiàn)掃描文件夾下所有文件
這篇文章主要為大家詳細(xì)介紹了java遞歸與非遞歸實(shí)現(xiàn)掃描文件夾下所有文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02springboot中如何使用openfeign進(jìn)行接口調(diào)用
這篇文章主要介紹了springboot中如何使用openfeign進(jìn)行接口調(diào)用問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07SpringMVC框架搭建idea2021.3.2操作數(shù)據(jù)庫(kù)的示例詳解
這篇文章主要介紹了SpringMVC框架搭建idea2021.3.2操作數(shù)據(jù)庫(kù),本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04Java進(jìn)行反編譯生成.java文件方式(javap、jad下載安裝使用)
這篇文章主要介紹了Java進(jìn)行反編譯生成.java文件方式(javap、jad下載安裝使用),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12java實(shí)現(xiàn)從網(wǎng)上下載圖片到本地的方法
這篇文章主要介紹了java實(shí)現(xiàn)從網(wǎng)上下載圖片到本地的方法,涉及java針對(duì)文件操作的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-07-07基于springboot+jwt實(shí)現(xiàn)刷新token過(guò)程解析
這篇文章主要介紹了基于springboot+jwt實(shí)現(xiàn)刷新token過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03