resultMap映射

来源:互联网 发布:淘宝客大群 编辑:程序博客网 时间:2024/06/01 10:46

(在各个javabean的mapper.xml文件中使用)

作用

作用是定义一个结果集的映射关系

为什么要有这个:

之前学的时候当我们使用MyBatis查询的时候,可以自动转化为我们所需要的POJO

但是,如果列名并不一定和javabean中的属性名字完全一致,且set方法也不一样

这时就需要我们手动去指定哪一个列对应哪一个javabean属性

(这也相当于暗示了:只要你的set方法名或者属性名最少有一个对得上查询的结果就能正确赋值)

甚至可以映射指定转换的数据类型,不过没必要,因为Mybatis已经通过反射获取到数据类型了

使用方法:

<mapper>标签内定义:

<resultMap type="com.thundersoft.mybatis.bean.Book" id="bookmapper"><!-- type:表示需要映射的POJO,可以是别名也可以是类的全名id:这个resultMap的标识 --> <id column="id" property="id"/>  // <id/>标签用来映射主键 <result column="title" property="title"/> //<result/>标签用来映射普通属性 <!--   column : 列名(无视大小写)  property : POJO中的属性名字(大小写敏感)  --></resultMap>

最后:
在查询<select>标签内添加属性

  <select id="selectBook" resultMap="bookmapper" parameterType="map">    select * from Book where id = #{id} and price = #{price}  </select>

resultMap比resultType优先级高

0 0
原创粉丝点击