67,513
社区成员
发帖
与我相关
我的任务
分享
for(int i=0;i<index;i+=pagesize){
Long timeStart_queryPortalIdAll_page=System.currentTimeMillis();
// logger.info("分页处理中"+(currentPage+i)+"------------"+(pagesize+currentPage+i));
if((pagesize+currentPage+i)>index){
//特殊处理截取值大于list.size() 情况
Map<String,Object> mapHelper=new HashMap();
mapHelper.put("index",2);//threadPoolTaskExecutorInsert线程中2代表节目插入
mapHelper.put("params",containsList.subList((currentPage+i),index));
mapHelper.put("cmsCategoryContainInfoDaoTarget", cmsCategoryContainInfoDaoTarget);
mapHelper.put("dbName",configService.CONSTANT_DB_NAME_PREFIX);
mapHelper.put("tableName",configService.CONSTANT_TABLE_NAME_CATEGORYCONTAININFO+portalid);
threadPoolTaskExecutorInsert.execute(new InsertDataThreadNew(mapHelper));
// cmsCategoryContainInfoDaoTarget.insert(containsList.subList((currentPage+i),index), configService.CONSTANT_DB_NAME_PREFIX, configService.CONSTANT_TABLE_NAME_CATEGORYCONTAININFO+portalid);
}else{
// cmsCategoryContainInfoDaoTarget.insert(containsList.subList((currentPage+i),(pagesize+currentPage+i)), configService.CONSTANT_DB_NAME_PREFIX, configService.CONSTANT_TABLE_NAME_CATEGORYCONTAININFO+portalid);
Map<String,Object> mapHelper=new HashMap();
mapHelper.put("index",2);//threadPoolTaskExecutorInsert线程中2代表节目插入
mapHelper.put("params",containsList.subList((currentPage+i),(pagesize+currentPage+i)));
mapHelper.put("cmsCategoryContainInfoDaoTarget", cmsCategoryContainInfoDaoTarget);
mapHelper.put("dbName",configService.CONSTANT_DB_NAME_PREFIX);
mapHelper.put("tableName",configService.CONSTANT_TABLE_NAME_CATEGORYCONTAININFO+portalid);
threadPoolTaskExecutorInsert.execute(new InsertDataThreadNew(mapHelper));
}
// logger.info("分页处理中"+(currentPage+i)+"------------"+(pagesize+currentPage+i)+LogTimerUtil.getOverTimeFormatStr(timeStart_queryPortalIdAll_page, System.currentTimeMillis()));
currentPage++;
}
public InsertDataThreadNew(Map<String,Object> mapHelper) {
super();
this.mapHelper = mapHelper;
}
@Override
public void run() {
try {
int index=(Integer) mapHelper.get("index");
if(index==1){
System.out.println("线程启动成功!");
ITableDaoTarget tableDaoTarget=(ITableDaoTarget) mapHelper.get("tableDaoTarget");
List<CmsCategoryInfoSource> childrenList=(List<CmsCategoryInfoSource>) mapHelper.get("mapHelper");
String dbName=mapHelper.get("dbName").toString();
String tableName=mapHelper.get("tableName").toString();
tableDaoTarget.insert(childrenList, dbName, tableName);
}else if(index==2){
List<CmsCategoryContainInfoSource> containsList=(List<CmsCategoryContainInfoSource>) mapHelper.get("params");
ITableDaoTarget cmsCategoryContainInfoDaoTarget=(ITableDaoTarget) mapHelper.get("cmsCategoryContainInfoDaoTarget");
String dbName=(String) mapHelper.get("dbName");
String tableName=(String) mapHelper.get("tableName");
cmsCategoryContainInfoDaoTarget.insert(containsList, dbName, tableName);
}else{
System.out.println("----");
}
System.out.println(Thread.activeCount()+"---活跃线程统计-");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}