(在各個javabean的mapper.xml文件中使用)
作用
作用是定義一個結(jié)果集的映射關(guān)系
為什么要有這個:
之前學的時候當我們使用MyBatis查詢的時候,可以自動轉(zhuǎn)化為我們所需要的POJO
但是,如果列名并不一定和javabean中的屬性名字完全一致,且set方法也不一樣
這時就需要我們手動去指定哪一個列對應哪一個javabean屬性
(這也相當于暗示了:只要你的set方法名或者屬性名最少有一個對得上查詢的結(jié)果就能正確賦值)
甚至可以映射指定轉(zhuǎn)換的數(shù)據(jù)類型,不過沒必要,因為Mybatis已經(jīng)通過反射獲取到數(shù)據(jù)類型了
使用方法:
在<mapper>
標簽內(nèi)定義:
<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>
標簽內(nèi)添加屬性
<select id="selectBook" resultMap="bookmapper" parameterType="map">
select * from Book where id = #{id} and price = #{price}
</select>
resultMap比resultType優(yōu)先級高