MyBatis中resultType和resultMap的区别

MyBatis中resultType和resultMap的区别

在使用MyBatis时,需要使用的时mapper.xml映射文件,结果集的返回大致是两种 resultType 和 resultMap, 那么这两者有什么区别和联系呢?

  • resultType用来处理非常简单的结果集,就是列名能够与实体类属性匹配的的结果集(mybatis使用驼峰命名(student_id ⇒ studentId)也可以,但是字段必须要匹配)
  • resultMap更擅长来处理复杂映射的结果集。比如一对一、一对多的复杂关系。

最简单的说明

  1. 如果定义的实体类的属性和数据库中的一致,那么直接使用 resultType 即可
  2. 如果数据库字段和实体类字段不是一一对应的,则需要采用 resultMap 属性,如果设计的数据库表,不同的表之间有相同的字段名,在mybatis中,给相同的字段名起别名即可,对象的result标签中的属性 column 就是对应的别名

你可能感兴趣的:(学习记录,笔记,SQL,java,spring,intellij-idea)