您的位置:首頁技術文章
文章詳情頁

詳解Mybatis中萬能的Map和模糊查詢寫法

瀏覽:6日期:2023-10-19 16:39:03
1、萬能的Map

假設,我們的實體類,或者數據庫中的表,字段或參數過多,我們接口參數以前用的是實體類,現在考慮使用下Map!

接口:

//萬能的Mapint addUser2(Map<String,Object> map);

mapper.xml:

<!--Map中的key--><insert parameterType='map'> insert into mybatis.user (id,name,pwd) values (#{userid},#{userName},#{passWord});</insert>

測試方法:

@Testpublic 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();}

現在通過Map傳遞參數,直接再sql中取出key即可!

詳解Mybatis中萬能的Map和模糊查詢寫法

而以前對象傳遞參數,需要再sql取對象相對應的屬性名才行!

詳解Mybatis中萬能的Map和模糊查詢寫法

而以前對象傳遞參數,需要再sql取對象相對應的屬性名才行!

詳解Mybatis中萬能的Map和模糊查詢寫法

只有一個基本類型參數的情況下,可以直接在sql中取到!(parameterType不寫都可以)

詳解Mybatis中萬能的Map和模糊查詢寫法

反正多個參數用Map,或者注解(后面記錄的文章會說到)!

2、模糊查詢寫法

模糊查詢怎么寫?

1.java代碼執行的時候傳遞通配符% %(比較安全,能防止sql注入,推薦)

List<User> userList = mapper.getUserLike('%李%');

詳解Mybatis中萬能的Map和模糊查詢寫法

​2.在sql拼接中使用通配符!(不能防sql注入)

<select resultType='com.kuang.pojo.User'> select * from mybatis.user where name like '%'#{value}'%'</select>

詳解Mybatis中萬能的Map和模糊查詢寫法

以上就是詳解Mybatis中萬能的Map和模糊查詢寫法的詳細內容,更多關于Mybatis Map和模糊查詢寫法的資料請關注好吧啦網其它相關文章!

標簽: Mybatis 數據庫
相關文章:
国产综合久久一区二区三区