mybatis学习笔记(3)---- 结果映射
结果映射都是针对查询而言的,因为只有查询才会有返回结果,才需要封装为pojo。
resultType
当表中的字段与类中的属性名称完全相同时,可以采用resultType。如果字段与属性值不一致是无法完成封装的,不匹配的属性的值为默认值。
解决方案:
- 查询的时候为每个字段设置别名,别名要和类中的属性名称一致。
- 使用resultMap
resultMap
- id属性:当前Mapper文件中唯一的标识一个resultMap,因为在一个mapper文件中可能有多个resultMap。
- type属性:把结果集中的每一行数据封装成什么类型的对象
<resultMap id="BaseMap" type="User">
<id column="id" property="id_"/>
<result column="username" property="username_"/>
<result column="password" property="pwd"/>
</resultMap>
column 代表表中的字段,propetry代表类中的属性名称,这样可以使得两者强制对应。
子元素id本质和result一样,只是在主键上使用id元素,可以提高查询效率。