• Map查询


    1、项目结构

    2、EmployeeMapper.xml添加代码

    <!-- public Map<String, Object> getEmpByIdReturnMap(Integer id) ; -->
          <select id="getEmpByIdReturnMap" resultType="map">
              select * from tbl_employee where id = #{id}
          </select>
          
    <!-- public Map<Integer, Employee> getEmpByLastNameLikeReturnMap(String lastName) ; -->
          <select id="getEmpByLastNameLikeReturnMap" resultType="com.atguigu.mybatis.bean.Employee">
              select * from tbl_employee where last_name like #{lastName}
          </select>

    注:①单个记录查询时:resultType="map"

      ②多个记录查询时:resultType="com.atguigu.mybatis.bean.Employee",为Map中value类型

    3、EmployeeMapper.java添加代码

      //多条记录封装一个map:Map<Integer, Employee>:键是这条记录的主键,只是记录封装后的javabean
        @MapKey("id")   //确定id值为Map中key
        public Map<Integer, Employee> getEmpByLastNameLikeReturnMap(String lastName) ;
        
        /*返回一条记录的map:
                key:列名
                value:对应值*/
        public Map<String, Object> getEmpByIdReturnMap(Integer id) ;
        

    注:@MapKey("id")  确定id值为Map中key

    4、单元测试类代码

      @Test
        public void test05() throws IOException {
            SqlSessionFactory sqlSessionFactory =getSqlSessionFactory();
            //1、获取到的SqlSession不会自动提交
            SqlSession openSession= sqlSessionFactory.openSession();
            try {
                /*2.获取接口的实现对象*/
                EmployeeMapper mapper= openSession.getMapper(EmployeeMapper.class);
                //mapper为代理对象,执行增删改查
                
           //单个查询 //Map<String , Object> map=mapper.getEmpByIdReturnMap(1);
    //模糊查询所有 Map<Integer, Employee> map =mapper.getEmpByLastNameLikeReturnMap("%e%"); System.out.println(map); //3、手动提交 openSession.commit(); } finally { openSession.close(); } }
  • 相关阅读:
    组件封装小试:使用Vue CLI3基于Element-ui进行组件封装
    <四>docker中的mysql和mongodb挂载
    <五>.netcore webapi连接部署在docker中的mysql
    <三>docker安装mysql
    <二>docker 安装mongodb
    <一>docker基础及centos安装docker
    <十一>将identityserver4的一些权限配置持久化到数据库
    <十>使用profileserver获取用户数据
    <九>集成ASP.NETCore Identity 作为授权账户持久到数据库
    <一>初试Identity
  • 原文地址:https://www.cnblogs.com/2016024291-/p/8235078.html
Copyright © 2020-2023  润新知