mybaits 中的foreach循环

[size=x-small]
一、  当集合为map对象的数据
      @service.java
                 map.put("ordDd", ordDd);
map.put("consignee", shr);
map.put("shdh", shdh);
map.put("shdz", shdz);
map.put("opType", opType);
map.put("useHosp", useHosp);
map.put("username", username);
//将要保存的表头数据放入 定义好的集合中
listMap.add(map);
         sqlId = "com.ifm.mappers.accept.accept.insertTHTemReady_insert";
if(listMap != null && listMap.size()>0){
mapcs.put("listMap", listMap);
dao.insert(sqlId, mapcs);
     @Mybatis
<insert id="insertTHTemReady_insert" parameterType="map">
INSERT INTO
MF_POS_SO_TMP (
BIL_TYPE,
rem,
cus_no,
cus_name,
sal_no,
OS_NO,
OS_DD,
CON_MAN,
CON_MAN_PHONE,
addr,
op_type,
op_hos,
OPERATOR
)
VALUES
<foreach collection="listMap" item="item" index="index" separator=",">
(
'${item.bilType}',
'${item.rem}',
'${item.cusNo}','${item.cusName}','${item.salNo}'
,'${item.ordNo}',#{item.ordDd},'${item.consignee}','${item.shdh}',
'${item.shdz}','${item.opType}','${item.useHosp}','${item.username}'
)
</foreach>

一、  当集合为list对象的集合
     @service.java
            List<String> cusNoList = new ArrayList<String>(wdrList.size());
//可获取单号集合
List<String> ordNoList = new ArrayList<String>(wdrList.size());

///  定义订单日期
ordDd = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
if (wdrList != null && wdrList.size() > 0) {
//遍历查询结果
for (getDsptWdrOrderBean ordBean : wdrList) {
ordNo = ordBean.getOrderCode();
ordNoList.add(ordNo);
cusNo = ordBean.getCusNo();
cusNoList.add(cusNo);
}
mapcs.put("ordNoList", ordNoList);
sqlId = "com.ifm.mappers.accept.accept.selectcusName_select";
mapcs.put("cusNoList", cusNoList);
   @Mybatis
         <select id="selectcusName_select" parameterType="map"
resultType="com.ifm.mvc.annotation.bean.SumAmtCreLimiTempBean">
SELECT
NAME name,
CUS_NO cusNo
FROM
CUST
WHERE
1=1
<if test="cusNoList != null and cusNoList !=''">
and CUS_NO in
<foreach collection="cusNoList" item="cusNo" open="(" close=")"   separator=",">           
#{cusNo}
</foreach>
</if>
[/size]

猜你喜欢

转载自xiaofei-ke.iteye.com/blog/2383589