package com.jst.prodution.movedata.controller;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.fastjson.JSON;
import com.jst.prodution.movedata.bean.UserinfoUseridRef;
import com.jst.prodution.movedata.utils.SplitListUtil;
public class Test {
public static void main(String[] args) {
List<UserinfoUseridRef> list = new ArrayList<UserinfoUseridRef>();
UserinfoUseridRef ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(100));
ref.setId(10000L);
ref.setUserid("1111111111");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(200));
ref.setId(20000L);
ref.setUserid("222222222");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(300));
ref.setId(30000L);
ref.setUserid("3333333333");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(400));
ref.setId(40000L);
ref.setUserid("44444444444");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(500));
ref.setId(50000L);
ref.setUserid("55555555555");
list.add(ref);
//splitList --> 把数据list分割成list/len组,每组len条数据
List<?> user = SplitListUtil.splitList(list, 2);
int batch = 2; //把分割的数个批次的数据按批次数执行 ,这个数字为执行第几批次
boolean exBatch = false; // 是否执行剩余的数据
if(batch > 0 && exBatch){
//删除之前执行过的记录
user.subList(0, batch).clear();
}
System.out.println("all="+JSON.toJSONString(user));
List<UserinfoUseridRef> uur = new ArrayList<>();
uur = (List<UserinfoUseridRef>) user.get(i);
System.out.println("s="+JSON.toJSONString(uur));
for(UserinfoUseridRef ur : uur){
System.out.println("e="+JSON.toJSONString(ur));
}
}
List<UserinfoUseridRef> uur = new ArrayList<>();
uur = (List<UserinfoUseridRef>) user.get(i);
System.out.println("2211="+JSON.toJSONString(uur));
for(UserinfoUseridRef ur : uur){
System.out.println("2222="+JSON.toJSONString(ur));
}
}
}
}
}
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.fastjson.JSON;
import com.jst.prodution.movedata.bean.UserinfoUseridRef;
import com.jst.prodution.movedata.utils.SplitListUtil;
public class Test {
public static void main(String[] args) {
List<UserinfoUseridRef> list = new ArrayList<UserinfoUseridRef>();
UserinfoUseridRef ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(100));
ref.setId(10000L);
ref.setUserid("1111111111");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(200));
ref.setId(20000L);
ref.setUserid("222222222");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(300));
ref.setId(30000L);
ref.setUserid("3333333333");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(400));
ref.setId(40000L);
ref.setUserid("44444444444");
list.add(ref);
ref = new UserinfoUseridRef();
ref.setBalance(new BigDecimal(500));
ref.setId(50000L);
ref.setUserid("55555555555");
list.add(ref);
//splitList --> 把数据list分割成list/len组,每组len条数据
List<?> user = SplitListUtil.splitList(list, 2);
int batch = 2; //把分割的数个批次的数据按批次数执行 ,这个数字为执行第几批次
boolean exBatch = false; // 是否执行剩余的数据
if(batch > 0 && exBatch){
//删除之前执行过的记录
user.subList(0, batch).clear();
}
System.out.println("all="+JSON.toJSONString(user));
if(batch >= 0 && !exBatch){
//执行指定批次的数据
for(int i = batch-1;i< batch;i++){List<UserinfoUseridRef> uur = new ArrayList<>();
uur = (List<UserinfoUseridRef>) user.get(i);
System.out.println("s="+JSON.toJSONString(uur));
for(UserinfoUseridRef ur : uur){
System.out.println("e="+JSON.toJSONString(ur));
}
}
}else{
// 执行剩余批次的数据
for(int i = 0;i< user.size();i++){List<UserinfoUseridRef> uur = new ArrayList<>();
uur = (List<UserinfoUseridRef>) user.get(i);
System.out.println("2211="+JSON.toJSONString(uur));
for(UserinfoUseridRef ur : uur){
System.out.println("2222="+JSON.toJSONString(ur));
}
}
}
}
}