select返回List

public interface EmployeeMapper {public List<Employee> getEmpsByLastNameLike(String lastName);}
    <!--    public List<Employee> getEmpsByLastNameLike(String lastName);--><!--resultType;如果返回的是一个集合,要写集合中元素的类型--><select id = "getEmpsByLastNameLike" resultType="com.atguigu.mybatis.bean.Employee">select * from tb1_employee where last_name like #{lastName}
</select>
   @Testpublic void test03() throws IOException {SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();SqlSession sqlSession = sqlSessionFactory.openSession();try{EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class);List<Employee> like = mapper.getEmpsByLastNameLike("%e%");for (Employee employee : like){System.out.println(employee);}}finally {sqlSession.close();}}

select返回map

public interface EmployeeMapper {//返回一条记录的map;key就是列名,值就是对应的值public Map<String,Object> getEmpByIdReturnMap(Integer id);}
    <!--    public Map<String,Object> getEmpByIdReturnMap(Integer id);--><select id="getEmpByIdReturnMap" resultType="map">select * from tb1_employee where id = #{id}</select>
  @Testpublic void test03() throws IOException {SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();SqlSession sqlSession = sqlSessionFactory.openSession();try{EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class);Map<String,Object> map = mapper.getEmpByIdReturnMap(1);System.out.println(map);}finally {sqlSession.close();}}

select返回多条记录封装的map

public interface EmployeeMapper {//多条记录封装一个map:Map<String, Employee>:键是这条记录的主键,值是这条记录的主键,值是记录封装后的javaBean//告诉mybatis封装这个map的时候,使用哪个属性作为map的key@MapKey("id")public Map<Integer,Employee> getEmpByLastNameLikeReturnMap(String lastName);}
    <!--resultType;如果返回的是一个集合,要写集合中元素的类型--><!--    public Map<Integer,Employee> getEmpByLastNameLikeReturnMap(String lastName);-->
<select id="getEmpByLastNameLikeReturnMap" resultType="com.atguigu.mybatis.bean.Employee">select * from tb1_employee where last_name like #{lastName}</select>
    @Testpublic void test03() throws IOException {SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();SqlSession sqlSession = sqlSessionFactory.openSession();try{EmployeeMapper mapper = sqlSession.getMapper(EmployeeMapper.class);Map<Integer, Employee> map = mapper.getEmpByLastNameLikeReturnMap("%j%");System.out.println(map);}finally {sqlSession.close();}}

[mybatis]映射文件_select_返回集合(List,Map)相关推荐

  1. MyBatis映射文件(一)

    目录 一.MyBatis映射文件 1.insert.update.delete元素 2.主键生成方式 3.参数(Parameters)传递 (1)单个参数 (2)多个参数 (3)命名参数 (4)POJ ...

  2. 3 了解MyBatis映射文件

    3.1 认识映射文件: 介绍:     MyBatis的映射文件主要用于定义业务操作命令,实现对象与数据表字段的映射,并控制对最终结果的封装.MyBatis是针对SQL构建,相对具有相同功能的JDBC ...

  3. Mybatis映射文件!CDATA[[]] 转义问题

    有没有觉得在mybatis映射文件写>(大于),<(小于)的时候贼麻烦,还得把"<",">"换位为"<", & ...

  4. Mybatis映射文件SQL语句模糊查询,#和$的区别和注意事项

    Mybatis映射文件SQL语句模糊查询 1. "%"#{value}"%" 在参数中不需要添加 %_ 推荐使用 2. '%${value}%' 在参数中不需要 ...

  5. MyBatis映射文件如何给数据库的int类型字段“插入”string类型记录

    MyBatis映射文件如何给数据库的int类型字段"插入"string类型记录. 数据库中对应字段名称和类型如下: 给数据库的int类型字段"插入"string ...

  6. MyBatis映射文件1(增删改、insert获取自增主键值)

    增删改 Mybatis为我们提供了<insert>.<update>.<delete>标签来对应增删改操作 在接口中写增删改的抽象方法 void addEmp(Em ...

  7. Mybatis 映射文件

    Mapper 就是"映射"的意思,Mapper 文件时 Mybatis 中的 SQL 语句的配置文件,其会在运行时加载 SQL 语句并映射相应参数.在 Mybatis 的全局配置文 ...

  8. [mybatis]映射文件_select_resultMap_关联查询_association分步查询延迟加载

    association分步查询 场景一 查询Employee的同时查询员工对应的部门 Employee===Department 一个员工有与之对应的部门信息 Employee表: Departmen ...

  9. 利用Maven逆向工程生成mybatis映射文件

    一,pom.xml 注意修改逆向工程配置文件的路径 <build><pluginManagement><plugins><plugin><grou ...

最新文章

  1. python同步打乱
  2. 零基础入门Python3-set集合详解
  3. AUTOSAR从入门到精通100讲(四十二)-Autosar架构下的模块详细设计及代码实现--基于配置的编程方法
  4. 两种解决Qt5显示中文乱码的方法(使用QStringLiteral和#pragma execution_character_set(utf-8)两种方法)
  5. [转]WebService压缩
  6. 如何向水晶报表数据源中的存储过程传参数……
  7. linux命令与示例 week 3
  8. mysql去掉两个最高分_Excel函数 去掉最高分和最低分取平均值?这个函数不可不知...
  9. python安装哪个版本好啊_Python 的版本选择与安装细节
  10. 数据结构用c语言描述第二版高等教育出版社,耿国华《数据结构-c语言描述(第2版)》,高等教育出版社...
  11. Hexo添加可控制网易云音乐播放器
  12. 28.【分解质因数】
  13. python图像检测_图像检索系列——利用 Python 检测图像相似度
  14. ctc系统通信前置服务器,CTC系统包括哪些接口服务器?
  15. 企业微信PC版多开软件,测试win10有效
  16. 5、vRealize Operations Manager 报告配置(虚拟化巡检报告)
  17. 制作背景为透明的logo
  18. intellij idea配置网络代理
  19. Python:Numpy—rand、randn
  20. 大学生html5实训心得体会,实训心得体会600字(精选5篇)

热门文章

  1. 【ArcGIS微课1000例】0007:基于数字高程模型DEM生成剖面线、剖面图
  2. 【小程序】刘一哥课堂随机点名提问神器V1.0(附源程序)
  3. Android之解决AppBarLayout 下面一道阴影
  4. IOS学习笔记二十三对象归档(NSKeyedArchiver、NSKeyedUnArchiver、NSCodeing)
  5. linux之vifm和ranger操作文件管理器使用总结
  6. linux c通过文件描述符以及write和read方法对文件进行读写
  7. linux之路由知识之ip route 命令中的疑惑
  8. 2000多一件的大牌T恤,真实成本有多少?
  9. 鉴别一个人是否 js 入门的标准竟然是?!
  10. mySQL微信小程序的div_做一个微信小程序的完整流程