循环excel做判断java,poi导出excel循环效率低上的有关问题

Java code//获取需要的用户信息

lu = comm.findalluser();

for (User u : lu) {

//查出所有客户信息

la = salesaccountdao.listpallAccount(u.getUserid());

if (la.size() > 0) {

accountLists.addAll(la);

}

}

//将查处的所有客户信息导出成excel[color=#FF0000](一下循环费时)[/color]

int i=0,j=0,size = accountLists.size();

for (i = 1; i < size; i++) {

// 获得这个sheet的第i行

row = sheet1.createRow(i);

for (j = 0; j < 12; j++) {

// 设置每个sheet每一行的宽度,自动,根据需求自行确定

sheet1.autoSizeColumn(j + 1, true);

// 获得这一行的每j列

cell = row.createCell(j);

switch (j) {

case 0:

cell.setCellValue(accountLists.get(i).getName());

break;

case 1:

cell.setCellValue(accountLists.get(i).getAddress());

break;

case 2:

cell.setCellValue(accountLists.get(i).getCity());

break;

case 3:

cell.setCellValue(accountLists.get(i).getCreatetime());

break;

case 4:

cell.setCellValue(accountLists.get(i).getCustomertype());

break;

case 5:

cell.setCellValue(accountLists.get(i).getDescription());

break;

case 6:

cell.setCellValue(accountLists.get(i).getProvince());

break;

case 7:

cell.setCellValue(accountLists.get(i).getStatecode());

break;

case 8:

cell.setCellValue(accountLists.get(i).getFax());

break;

case 9:

cell.setCellValue(accountLists.get(i).getIndustrycode());

break;

case 10:

cell.setCellValue(accountLists.get(i).getRemarks());

break;

case 11:

cell.setCellValue(accountLists.get(i).getWebsiteurl());

break;

case 12:

cell.setCellValue(accountLists.get(i).getTelephone());

break;

case 13:

cell.setCellValue(accountLists.get(i).getUserByOwnerid().getName());

break;

}

}

}

[color=#FF0000]//就在生成excel的嵌套循环中,浪费了大量时间,总的600条数据,打印时间却是110秒钟,请高手指点一二,不胜感激!![/color]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值