MyBatis 的resultMap用来映射查询结果集。
简单来说,当表中的字段和对象的属性不一一匹配时,我们就需要使用resultMap来实现映射。
resultMap的语法格式:
<resultMap type="map类型" name="map名称">
<id property="id" column="columnName" />
<result property="property" column="columnName" />
</resultMap>
参数说明:
- type:是类的全限定名或别名。
- name: resultMap的命名,方便引用。
- id:标识映射结果到一个属性。
- result:普通列映射到一个属性。
- column: 查询列名
- property:实体类的属性名称
使用resultMap的方式:
<select id="selectUser" resultMap="userMap">
select * from user
</select>
这里的userMap是定义的resultMap的名字。
其他用法:
- constructor:将输入的结果集映射为 JavaBean 的构造函数的参数。
- association:映射的结果是一个复杂类型的属性。
- collection:映射的结果是复杂类型属性的集合。
总的来说,resultMap是MyBatis映射器最重要的元素,它可以解决各种复杂对象关系映射的问题。