lidaye2396

博客园 首页 新随笔 联系 订阅 管理

6. 万能Map

假设,我们的实体类,或者数据库中的表,字段或者参数过多,我们应该考虑使用Map!

  1. UserMapper接口

//用万能Map插入用户
public void addUser2(Map<String,Object> map);
  1. UserMapper.xml

<!--对象中的属性可以直接取出来 传递map的key-->
<insert id="addUser2" parameterType="map">
  insert into user (id,name,password) values (#{userid},#{username},#{userpassword})
</insert>
  1. 测试

   @Test
   public void test3(){
       SqlSession sqlSession = MybatisUtils.getSqlSession();
       UserMapper mapper = sqlSession.getMapper(UserMapper.class);
       HashMap<String, Object> map = new HashMap<String, Object>();
       map.put("userid",4);
       map.put("username","王虎");
       map.put("userpassword",789);
       mapper.addUser2(map);
       //提交事务
       sqlSession.commit();
       //关闭资源
       sqlSession.close();
  }

Map传递参数,直接在sql中取出key即可! 【parameter=“map”】

对象传递参数,直接在sql中取出对象的属性即可! 【parameter=“Object”】

只有一个基本类型参数的情况下,可以直接在sql中取到

多个参数用Map , 或者注解!

7. 模糊查询

模糊查询这么写?

    1. Java代码执行的时候,传递通配符% %

      List<User> userList = mapper.getUserLike("%李%");
    2. 在sql拼接中使用通配符

      select * from user where name like "%"#{value}"%"
posted on 2021-03-30 11:11  lidaye2396  阅读(35)  评论(0编辑  收藏  举报