文章目录
- MaBatis使用`ResultMap`标签手动映射详解使用
- 1、MyBatis只能自动维护库表”列名“与”属性名“相同时的对应关系,二者不同时无法自动ORM,如下:
- 2、在SQL中使用 as 为查询字段添加列别名,以匹配属性名:
- 但是如果我们的查询很多,都使用别名的话写起来岂不是很麻烦!
- 3、使用`ResultMap`标签手动映射,解决实体字段和数据表字段不一致的问题
MaBatis使用ResultMap
标签手动映射详解使用
1、MyBatis只能自动维护库表”列名“与”属性名“相同时的对应关系,二者不同时无法自动ORM,如下:
2、在SQL中使用 as 为查询字段添加列别名,以匹配属性名:
<select id="findAll" resultType="cn.fpl1116.pojo.Role" >select id, role_name as roleName, role_desc as roleDesc from role</select>
但是如果我们的查询很多,都使用别名的话写起来岂不是很麻烦!
3、使用ResultMap
标签手动映射,解决实体字段和数据表字段不一致的问题
<!--结果映射id="findAll2ResultMap" :resultMap标签的id,,必须唯一type="cn.fpl1116.pojo.Role":等价于resultType--><resultMap id="findAll2ResultMap" type="cn.fpl1116.pojo.Role"><!--主键字段和属性的映射关系--><id column="id" property="id"></id><!--非主键字段和属性的映射关系--><result column="role_name" property="roleName"></result><result column="role_desc" property="roleDesc"></result></resultMap><!--resultMap:resultMap标签的id--><select id="findAll2" resultMap="findAll2ResultMap">select * from role</select>