ibatis传递map和数组

java代码:

Map<String,Object> param = new HashMap<String,Object>();
Long[] widArr = new Long[itemList.size()];
for(int i = 0; i < itemList.size(); i++){
      widArr[i] = itemList.get(i).getWid();
}
param.put("fdcId", itemList.get(0).getSrcId());
param.put("widArr", widArr);

this.queryForList("FdcHistorySales.selectByFdcIdAndWid", param);

ibatis.xml

<select id="selectByFdcIdAndWid" parameterClass="Map" resultClass="fdcHistorySales">
		select wid,fdcid,history_sales as historySales from fdc_history_sales
		where 1=1
		<isNotNull property="fdcId">
			and fdcid=#fdcId#
		</isNotNull >
		<isNotNull prepend="and" property="widArr">
         	 	 wid in  
       		   <iterate  open="("  close=")"  conjunction="," property="widArr">
                       #widArr[]#
                  </iterate>   
                </isNotNull>
</select>

d

猜你喜欢

转载自mingkongeye.iteye.com/blog/2354578