MyBatis中map的應用與模糊查詢實現代碼
1.MyBatis中map的應用
1.1.應用場景
假設,實體類,或者數據庫中的表,字段或者參數過多,應當考慮使用Map!!!
1.2.具體實現
//萬能map int addUser2(Map<String,Object> map);
<!--對象中的屬性,可以直接取出來 parameterType=傳遞map中的key--> <insert id="addUser" parameterType="map"> insert into mybatis.user (id, name, pwd) values (#{userId},#{userName},#{passWord}); </insert>
@Test public void addUser(){ SqlSession sqlSession = null; try{ sqlSession = MybatisUtils.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); Map<String,Object> map = new HashMap<String,Object>(); map.put("userid",5); map.put("userName", "Hello"); map.put("passWord","123456"); userMapper.addUser2(map); sqlSession.commit(); }catch(Exception e){ e.printStackTrace(); }finally { sqlSession.close(); } }
1.3.註意點!!!
- Map傳遞參數,直接在sql中取出key即可!【parameterType=“map”】
- 對象傳遞參數,直接在sql中取對象的屬性即可!【parameterType=“Object”】
- 隻有一個基本類型參數的情況下,可以直接在sql中取到! 多個參數用Map,或者註解!
2.模糊查詢
User gteUserById(Map<String,Object> map);
<select id="getUserLike" resultType="com.pojo.User"> select * from mybatis.user where name like #{value} </select>
@Test public void getUserLike(){ SqlSession sqlSession = null; try{ sqlSession = MybatisUtils.getSqlSession(); UserMapper userMapper = sqlSession.getMapper(UserMapper.class); List<User> userList = userMapper.getUserLike("%lyh%"); for(User user : userList){ System.out.println(user); } }catch(Exception e){ e.printStackTrace(); }finally { sqlSession.close(); } }
到此這篇關於MyBatis中map的應用與模糊查詢實現代碼的文章就介紹到這瞭,更多相關MyBatis map模糊查詢內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 詳解Mybatis中的CRUD
- 詳細聊聊Mybatis中萬能的Map
- MyBatis使用Map與模糊查詢的方法示例
- Mybatis CURD及模糊查詢功能的實現
- Mybatis結果集映射與生命周期詳細介紹