分段/次发送请求

在项目中如何需要用到全量同步数据给到第三方,第三方一般接口都会有限制 比如分页传递啊 一次多少个啊,下面我分享下 传递人员数据给到云学堂批次传递

云学堂接口 限制一次二百人 也就是二百条数据

        JSONObject data;
        JSONArray dataArray = new JSONArray();
        rs.executeQuery(" select t1.id,t1.LOGINID,t1.LASTNAME,t1.WORKCODE,t1.DEPARTMENTID from HRMRESOURCE t1 where t1.status !=5");
        while (rs.next()) {
            data = new JSONObject();
            data.put("thirdUserId", rs.getString(1));
            data.put("username", rs.getString(2));
            data.put("fullname", rs.getString(3));
            data.put("userNo", rs.getString(4));
            data.put("deptThirdId", rs.getString(5));
            dataArray.add(data);
        }

第一步:先从数据库查出来所有的数据 封装到数组里面

        for (int i = 0; i < dataArray.size(); i += CloudSchoolUtil.BATCH_SIZE) {
            List batch = dataArray.subList(i, Math.min(i + CloudSchoolUtil.BATCH_SIZE, dataArray.size()));
            JSONObject parms = new JSONObject();
            parms.put("datas", batch);
            CloudSchoolUtil.postJsonData(CloudSchoolUtil.getValue("syusers"), parms.toString());
        }

第二步:根据对方要求 分批次传送,其中 CloudSchoolUtil.BATCH_SIZE 为对方要求条目数 也就是一次最多 多少条数据.

当然也可以 用sql分页去查询 然后传递 方法有很多 看哪种适合当前场景

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你真好看≧◔◡◔≦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值