博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poi快速导入导出excel表格
阅读量:4361 次
发布时间:2019-06-07

本文共 2595 字,大约阅读时间需要 8 分钟。

@RequestMapping("reportToExcel") @ResponseBody public ResultJsonInfo reportExcel(WxSchoolWisdomPayInfoQueryParam param, HttpServletRequest request, HttpServletResponse response) throws IOException {
//String accountName= request.getParameter("accountName"); String filePath="C:\\Users\\Administrator\\Desktop\\test.xlsx"; //导出模板内容 String path="/excelTemplates/reportXls/paymentDetail.xls"; InputStream inputStream= getClass().getResourceAsStream(path); //2003版excel表格要用HSSFWorkbook工作簿创建 HSSFWorkbook wb = new HSSFWorkbook(inputStream); //获取第一个Sheet Sheet sheet = wb.getSheetAt(0); int num= sheet.getRow(0).getLastCellNum(); //排序 OrderBean orderBean = new OrderBean(); orderBean.setOrder(OrderBean.DESC); orderBean.setOrderBy("payEndDate"); param.setOrderBean(orderBean); XSSFWorkbook workbook1 = new XSSFWorkbook(new FileInputStream(new File(filePath))); SXSSFWorkbook sxssfWorkbook = new SXSSFWorkbook(workbook1, 100); Sheet first = sxssfWorkbook.getSheetAt(0); //总记录 List
datas = new ArrayList
(); String ids = param.getWxSchoolWisdomPayInfo().getIds(); if (ids == null) {
datas = wxSchoolWisdomPayInfoService.findPage(param).getDataList(); } else {
String id[] = ids.split(","); for (int i = 0; i < id.length; i++) {
datas.add(wxSchoolWisdomPayInfoService.findById(id[i])); } } if (datas.size() > 10000) {
long t1=System.currentTimeMillis(); List
dtlDatas = new ArrayList
(); int i = 1; String batchid = ""; for(int k=0;k
list = new ArrayList
(); String[] str = batchid.split(","); for(int j = 0;j
payInfoList = wxSchoolWisdomPayInfoDetailService.findPage(q).getDataList(); for (WxSchoolWisdomPayInfoDetailVO dtl : payInfoList) { dtl.setId(i); if (dtl.getPayEndDate() != null) { String payDate = DateTools.getFormattingDateTime(dtl.getPayEndDate()); dtl.setPayDate(payDate); } String state = dtl.getPayState(); if ("1".equals(state)) { dtl.setPayState("待支付"); } else if ("0".equals(state)) { dtl.setPayState("支付成功"); } DecimalFormat decimalFormat = new DecimalFormat("###0.00"); String amt = decimalFormat.format(dtl.getPayAmt()); dtl.setAmt(amt); dtlDatas.add(dtl); i++; } try { for (int f = 0; f < dtlDatas.size(); f++) { Row row = first.createRow(f); for (int j =0; j

转载于:https://www.cnblogs.com/CatsBlog/p/9186968.html

你可能感兴趣的文章
selenium动作链
查看>>
敏捷外包工程系列之二:人员结构(敏捷外包工程,敏捷开发,产品负责人,客户价值)...
查看>>
《设计你的人生》的部分经典语录
查看>>
mustache多次渲染和多个赋值
查看>>
《Flutter 实战》开源电子书
查看>>
Python 键盘记录
查看>>
HDU 1381 Crazy Search
查看>>
PLSQL
查看>>
修改计算机名
查看>>
Android-Activity的启动模式
查看>>
禅道项目管理系统整合Selenium IDE的思路
查看>>
Web 前端开发精华文章推荐(HTML5、CSS3、jQuery)【系列二十三】
查看>>
linux-nohup命令
查看>>
[LeetCode OJ] Roman to Integer
查看>>
三次握手和四次挥手
查看>>
Redis的简单动态字符串实现
查看>>
putty network error:software caused connection abort
查看>>
存储过程 <3> 和函数的区别
查看>>
高级service之ipc ADIL用法
查看>>
Django框架-基础篇
查看>>