MyBatis之查询返回对象集合

实现返回值是一个对象集合(List<Object>)的操作

 

(1).在接口中定义编写查询的方法

public List<Employee> getEmpsByLastNameLike(String lastName);

  

(2).在该实体对象的对应的映射文件中进行查询的配置

<select id="getEmpsByLastNameLike" resultType="com.xxx.Employee">
		select * from tbl_employee where last_name like #{lastName}
</select>

(3).测试查询

EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
List<Employee> like = mapper.getEmpsByLastNameLike("%e%");
for (Employee employee : like) {
	System.out.println(employee);
}

  

总结:使用select查询出一个对象集合然后返回需要注意:

1.我们在实体对象的映射文件中设置配置的时候,如果返回的是一个集合,要写集合中元素的类型。

2.在查询的时候,我们直接使用一个集合对象List<Object>来接收查询的结果即可,MyBatis会帮助我们加载到集合中。

 

实现返回值是一个对象集合(Map<key,value>)的操作

 

(1).单条记录封装成为一个Map对象

  ①.在接口中定义编写查询的方法

public Map<String, Object> getEmpByIdReturnMap(Integer id);

  ②.在该实体对象的对应的映射文件中进行查询的配置

<select id="getEmpByIdReturnMap" resultType="map">
 		select * from tbl_employee where id=#{id}
</select>

  

③.测试查询

EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class);
Map<String, Object> map = mapper.getEmpByIdReturnMap(1);
System.out.println(map);

  

所有的结果都是 List 形式返回,我们需要指定的是返回内容的具体类型。注意在实体对象的对应的映射文件中进行查询的配置的时候resultType的类型。

总结resultType:

  1. 基本类型 :resultType=基本类型
  2. List类型: resultType=List中元素的类型
  3. Map类型 resultType =map

  

 

posted @ 2021-08-15 15:37  Mr_sven  阅读(3573)  评论(0编辑  收藏  举报