【JAVA - SSM】之MyBatis输出映射

        MyBatis中的输出映射有两种:resultType和resultMap。


1、resultType

        使用resultType进行结果映射时,只有当查询结果中有至少一列的名称和resultType指定的POJO的某个属性名称相同时,才会映射成功。如果查询出来的列名和POJO中的属性名全部不一致,就不会映射成任何POJO对象(解决这个问题可以使用下面介绍的resultMap映射)。

        resultType的类型可以是HashMap,这样查询出来的列名就是HashMap中的key。


2、resultMap

        MyBatis使用resultMap可以完成高级输出结果的映射。如果查询出来的列名和POJO中的属性名不一致,可以通过定义一个resultMap对列名和POJO属性名之间做一个映射关系。resultMap的具体代码如下:

定义resultMap的代码:



	
	
	
	
	

Statement中的代码:



Mapper接口中的代码:
List findEmployeeListWithResultMap() throws Exception;
测试代码:
// 使用resultMap输出员工信息
@Test
public void testFindEmployeeListWithResultMap() throws Exception {
	SqlSession session = factory.openSession();
	EmployeeMapper mapper = session.getMapper(EmployeeMapper.class);
	List list = mapper.findEmployeeListWithResultMap();
	for (Employee e : list) {
		System.out.println(e);
	}
}


你可能感兴趣的:(【JAVA,-,SSM】)