今天碰到問題,通過集合查詢返回map,用一個code做key,返回對象爲value的形式,找了一些資料都不行,自己研究了半天,終於解決,沒看源碼,大神可以研究下源碼,問題是解決了,圖發不上來,鬱悶
mapper:
@MapKey("stockDetailTrackCode")
public Map<String, StockDetailTrackEntity> selectStockDetailTrackByCodes(List<String> codes);
xml:
<select id="selectStockDetailTrackByCodes" resultMap="BaseResultMap" resultType="map">
select <include refid="Base_Column_List"></include>
from erp_stock_detail_track
where yn = 1 and is_audit = 1 and stock_detail_track_code in
<foreach collection="list" item="codes" index="index"
open="(" separator="," close=")">
#{codes}
</foreach>
</select>
<resultMap id="BaseResultMap" type="xxx.StockDetailTrackEntity" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="stock_detail_track_code" property="stockDetailTrackCode" jdbcType="VARCHAR" />
</resultMap>
debug:
mybatis版本是3.2.8,我2個返回類型都寫,不知道爲啥不報錯,有時間的可以研究下源碼,網上說的資料太多了,看的暈,我們搭的框架dao層沒有實現,如果有實現可以自己定義handler,也可以解決,我沒寫過,看網上資料瞭解的