java处理后端回传的数组并用mybatis批量增加

后端service

​
public void save(PageData pd)throws Exception{
        PageData params = new PageData();
        User user = (User) pd.get("user");
        String st= pd.getString("0");//取出前端回传的ID号数组
        if(st == null || st == ""){//判断是否为空
            throw new Exception("没有新增id!");
        }
        String[] sts = st.split(",");//将字符串还原为数组
        List<PageData> list = new ArrayList<PageData>();//创建List集合,用来保存增加对象
        for (int i = 0 ; i< sts.length ; i++){//对回传的数组进行处理
            PageData pda = new PageData();//建立对象
            pda.put("id",sts[i]);//给对象增加属性
            pda.put("create_time" , DateUtil.getTime());
            pda.put("create_userid",user.getUserId());
            pda.put("if_deleted","0");
            list.add(pda);//将对象增加进数组中
        }
        params.put("list",list);//保存给对象使用

        xxxDao.save(params);
    }

​

 map

	<insert id="save" parameterType="pd">
		insert into xxxx(
		    id,
			if_deleted,
			create_time,
			create_userid
		) values
		<foreach collection="list" item="item" index="index" separator=",">
		 (
			 #{item.id},
			 #{item.if_deleted},
			 #{item.create_time},
			 #{item.create_userid}
		 )
		</foreach>
	</insert>

猜你喜欢

转载自blog.csdn.net/jtfyh/article/details/118381869