Mybatis-03

Mybatis

  我们在进行了简单的CRUD操作后,开始了解并使用Map查询以及模糊查询

Map查询

  Map查询一般用在实体类或数据库中表有太多的参数的情况,因为Map可传可变参数,局部修改

  代码演示:

接口:

    // Map查询
    UserInfo getUserById(Map<String,Object> map);

SQL语句: 这里要切记,但凡使用了Map的参数,一定要表明参数类型为Map

    <select id="getUserById" parameterType="Map" resultType="com.charles.pojo.UserInfo">
        select * from userinfo where iduserInfo=#{iduserInfo}
    </select>

测试类调用:

    @Test
    public void getUserById(){
        SqlSession session = MybatisUtils.getSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        Map<String,Object> map = new HashMap<>();
        map.put("iduserInfo",1);
        UserInfo userById = mapper.getUserById(map);
        System.out.println(userById);
        session.close();
    }

模糊查询

  代码演示:

接口:

    List<UserInfo> queryLike(String value);

SQL语句:    为了防止SQL注入,我们必须添加通配符

    <select id="queryLike" resultType="com.charles.pojo.UserInfo">
        select * from userinfo where username like "%"#{value}"%";
    </select>

测试类调用:

    // 模糊查询
    @Test
    public void queryLike(){
        SqlSession session = MybatisUtils.getSession();
        UserMapper mapper = session.getMapper(UserMapper.class);
        List<UserInfo> c = mapper.queryLike("C");

        for (UserInfo userInfo : c){
            System.out.println(c);
        }
        session.close();
    }
原文地址:https://www.cnblogs.com/Charles-H/p/Mybatis-03.html