Mybatis 輸出對映-- resultType resultMap
在mapper.xml檔案中,寫一個statement,需要有id,輸入對映或輸出對映。這裡我們介紹輸出對映。
輸出對映有兩種形式。一種是resultType,另一種是resultMap;
使用resultType進行輸出對映,只有查詢出來的列名和pojo中的屬性名一致,該列才可以對映成功。
如果查詢出來的列名和pojo的屬性名不一致,定義一個resultMap對列名和pojo屬性名之間作一個對映關係
1.resultType
這種方式使用比較簡單,只要在statement的語句中,查詢的列名和我們定義的pojo的屬性名稱一致,就能對映成功
mapper.xml中查詢的id和username;
<!-- 在對映檔案中配置很多sql語句 -->
<!-- 需求:通過id查詢使用者表的記錄 -->
<!-- 通過select執行資料庫的查詢 -->
<!-- id:標識對映檔案中的sql -->
<!-- 將sql語句封裝到mappedStatement物件中,所以將id成為statement 的id -->
<select id="findUserById" parameterType="int" resultType="user">
select id,username from USER where id = #{id}
</select>
Pojo User
package cn.itcast.mybatis.po;
import java.util.Date;
/**
* 使用者資訊 Po:持久層物件Model
* @author fxq
*
*/
public class User {
private int id;
private String username;
private String sex;
private Date birthday;
private String address;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
2.resultMap
如果查詢出來的列名和pojo的屬性名不一致,通過定義一個resultMap對列名和pojo屬性名之間作一個對映關係。
(1).定義resultMap
<!-- 定義resultMap 將SELECT id id_,username username_ FROM USER WHERE id=#{value} -->
column:查詢出的列名,
property:pojo中對應的列名; id表示查詢結果集中唯一標識
<resultMap type="user" id="userResultMap">
<id column="id_" property="id" />
<result column="username_" property="username" />
</resultMap>
<!-- 使用resultMap進行輸出對映; resultMap中是resultMap轉化的id; -->
<select id="findUserById" parameterType="int" resultMap="userResultMap">
select id id_,username username_ from USER where id = #{id}
</select>
3.總結
根據查詢出列名是否和pojo的屬性名稱是否一致,來分析選擇輸出對映的型別;相關文章
- resultMap 和 resultType 的欄位對映覆蓋問題
- mybatis之sql查詢配置檔案resultType和resultMapMyBatisSQL
- mybatis xml裡的 resultMap、resultOrdered、resultSets、resultSetType、resultType 區別MyBatisXML
- MyBatis(四) 對映器配置(自動對映、resultMap手動對映、引數傳遞)MyBatis
- Mybatis 強大的結果集對映器resultMapMyBatis
- 【Mybatis系列】從原始碼角度理解Mybatis欄位對映-AS&ResultMapMyBatis原始碼
- MyBatis 使用resultMap 以及 一對一和一對多MyBatis
- 深入淺出MyBatis:「對映器」全瞭解MyBatis
- Mybatis結果對映MyBatis
- Mybatis 基礎xml對映MyBatisXML
- MyBatis從入門到精通(十一):MyBatis高階結果對映之一對多對映MyBatis
- MyBatis從入門到精通(九):MyBatis高階結果對映之一對一對映MyBatis
- Mybatis實體關聯對映MyBatis
- mybatis關聯關係對映MyBatis
- Mybatis對映檔案簡介MyBatis
- mybatis高階結果對映MyBatis
- MyBatis 結果對映總結MyBatis
- myBatis——註解,#{}與${},resultMap的使用MyBatis
- MyBatis實現一對一關聯對映MyBatis
- mybatis一對多查詢resultMap只返回了一條記錄MyBatis
- 5、中文的輸出(GBK不可對映字元的解決方案)字元
- Mybatis筆記03---ResultMap及分頁MyBatis筆記
- MyBatis框架之SQL對映和動態SQLMyBatis框架SQL
- day07-MyBatis的關聯對映01MyBatis
- Mybatis基礎:Mybatis對映配置檔案,Mybatis核心配置檔案,Mybatis傳統方式開發MyBatis
- mybatis中註解對映SQL示例程式碼MyBatisSQL
- JavaEE MyBatis關聯對映之多對多(教材學習筆記)JavaMyBatis筆記
- mybatis原始碼學習------resultMap和sql片段的解析MyBatis原始碼SQL
- 【Mybatis系列】從原始碼角度理解Mybatis欄位對映-駝峰式命名MyBatis原始碼
- springboot~mybatis-plus中使用TypeHandler做型別對映Spring BootMyBatis型別
- java-Mybatis XML 對映器(select,insert, update 和 delete)JavaMyBatisXMLdelete
- mybatis 實體類排除資料庫欄位對映MyBatis資料庫
- Mybatis動態對映,這次終於搞明白了MyBatis
- Spring整合Mybatis方式一 - 常規整合 - 註冊對映器SpringMyBatis
- 『手寫Mybatis』實現對映器的註冊和使用MyBatis
- Mybatis的Mapper對映檔案中常用標籤及作用MyBatisAPP
- MyBatis加強(1)~myBatis物件關係對映(多對一關係、一對多關係)、延遲/懶載入MyBatis物件
- stm32f103在使用定時器1重對映引腳輸出PWM定時器
- 對映