ResultType
通常用于单表查询,且结果匹配Entity
列名和标准成员名匹配时可直接使用字段
不一致时使用SQL别名
<select id="selectUsers" resultType="User">
select
user_id as "id",
user_name as "userName",
hashed_password as "hashedPassword"
from some_table
where id = #{id}
</select>
ResultMap
通常用于联合查询结果
列名和成员属性名不一致使用
指定查询结果和bean属性的字段映射关系
<select id="selectUsers" resultMap="userResultMap">
select user_id, user_name, hashed_password
from some_table
where id = #{id}
</select>
<resultMap id="userResultMap" type="User">
<id property="id" column="user_id" />
<result property="username" column="user_name"/>
<result property="password" column="hashed_password"/>
</resultMap>
<association> 用于连表的一对一关联
<collection> 用于连表的一对多关联