1. 程式人生 > 實用技巧 >resultMap mybatis高階對映

resultMap mybatis高階對映

resultMap是mybatis中非常重要的一種對映元素,用於實現mybatis中的高階對映:
應用場景:
1)表中欄位與類中屬性名字不一致
2)sql巢狀查詢
3)多表關聯查詢

<resultMap type="com.cy.pj.sys.pojo.SysRoleMenu" //type指向pojo物件的全路徑名
            id="sysRoleMenu">//id:標識這個resultmap
        <id property="id" column="id"/>//進行對映   property:是資料物件的屬性,column:是資料表中的列
        <result property="name" column="name"/> //主鍵用id  非主鍵用result
        <result property="note" column="note"/> 
        <collection property="menuIds"    //通過column 的值呼叫名稱空間中的方法查詢結果對映到property
                    column="id"
                    select="com.cy.pj.sys.dao.SysRoleMenuDao.findMenuIdsByRoleId">
        </collection>
 </resultMap>
 
 <select id="findById" 
         resultMap="sysRoleMenu">//指定使用哪一個resultmap
         select id,name,note
         from sys_roles
         where id=#{id}
 </select>