软件编程
位置:首页>> 软件编程>> java编程>> MyBatis中map的应用与模糊查询实现代码

MyBatis中map的应用与模糊查询实现代码

作者:\\u674e\\u80b2\\u6b22  发布时间:2021-09-02 18:27:14 

标签: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();
       }

}

来源:https://blog.csdn.net/liyuuhuvnjjv/article/details/121192299

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com