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物件.