1. 程式人生 > >mybatis中resultMap丟失查詢結果,association“錯誤”去除重複資料的問題

mybatis中resultMap丟失查詢結果,association“錯誤”去除重複資料的問題

  <resultMap id="commissionRec" type="CommissionRec" >         <result property="sourceName" column="cmr_sourceName"/>         <result property="totalMoney" column="cmr_totalMoney"/>         <result property="totalCard" column="cmr_totalCard"/>         <result property="totalCommission" column="cmr_totalCommission"/>         <result property="commissionTimes" column="cmr_commissionTimes"/>         <result property="isProvided" column="cmr_isProvided"/>                  <result property="userInfo.userId" column="us_userId"/>         <result property="userInfo.userName" column="us_userName"/>                  <association property="memberCard" resultMap="memberCardTemplate" />          <!--          <association property="userInfo" resultMap="userInfo" />           -->     </resultMap>

--------------------------------------------------------------------------------------------------------------------------------------------------------

    <resultMap id="userInfo" type="cn.sstech.member.marketing.model.base.BaseUserInfo" >         <id property="userId" column="us_userId"/>         <result property="userName" column="us_userName"/>     </resultMap>

--------------------------------------------------------------------------------------------------------------------------------------------------------

查詢結果

如上圖所示查詢結果中,第一條和第二條只有us_userId是不重複的,而剩下的欄位都被注入到CommissionRec物件中。這時

1.用association注入userInfo mybatis會因為資料一樣而將前兩條資料合為一個CommissionRec物件,us_userId則隨便調一個注入到userInfo物件中

2.用 <result property="userInfo.userId" column="us_userId"/>這種制定具體欄位名的方式注入,mybatis會因為記錄資料有所不同而將前兩條資料設為2個CommissionRec物件.