easypoi,多sheet导出,excel注解导出

1.controller

 public void exportSsTj(HttpServletResponse response, String zwyf) throws Exception {
         //查询结果一
         final List<SsqktjVO> vos = ssqktjService.querySsqkTj(zwyf);
         //查询结果二
         List<YctjVO> yvos= ssqktjService.queryYcTj(zwyf);
         //设置列表排除项,无需,则可不要
        List<String> exclusions = new ArrayList<String>();
        for (int i = 0; i < priceItems.size(); i++) {
            exclusions.add(priceItems.get(i).getItemname());
        }
         // 创建参数对象(用来设定excel得sheet得内容等信息)  
         ExportParams params1 = new ExportParams() ;  
         // 设置sheet1得名称  
         params1.setSheetName("表一"); ;  
         params1.setTitle("测试sheet表一");
         params1.setSecondTitle("月份:"+zwyf);
         params1.setExclusions(exclusions.toArray(new String[priceItems.size()]));
         // 创建sheet1使用得map  
         Map dataMap1 = new HashMap<>();  
         // title的参数为ExportParams类型,目前仅仅在ExportParams中设置了sheetName  
         dataMap1.put("title",params1) ;  
         dataMap1.put(NormalExcelConstants.PARAMS, params1);
         // 模版导出对应得实体类型  
         dataMap1.put("entity",SsqktjVO.class) ;  
         // sheet中要填充得数据  
         dataMap1.put("data",list1) ;

        // 创建sheet2使用得map  
         ExportParams params2 = new ExportParams() ;  
         params2.setSheetName("表二") ;  
         params2.setTitle("测试sheet表2");
         params2.setSecondTitle("月份:"+zwyf);
         Map dataMap2 = new HashMap<>();  
         dataMap2.put("title",params2) ;  
         dataMap2.put("entity",YctjVO.class) ;  
         dataMap2.put("data",yvos);  

         // 将sheet1和sheet2使用得map进行包装  
         List sheetsList = new ArrayList<>() ;  
         sheetsList.add(dataMap1);  
         sheetsList.add(dataMap2);  

         Workbook workbook = ExcelExportUtil.exportExcel(sheetsList, ExcelType.HSSF) ; 
         response.setContentType("applicationnd.ms-excel"); // 改成输出excel文件
         String fileName = java.net.URLEncoder.encode("实收情况统计表", "UTF-8");
         response.setHeader("Content-disposition",
                "attachment; filename=" + fileName + ".xls");// 03版本后缀xls,之后的xlsx
         OutputStream out = response.getOutputStream();
         workbook.write(out);
 }

2.model 实体类信息,(导出表头信息为实体类信息顺序)

//表一
    /**
     * 附加费
     */
    @Excel(name="附加费",width=20)
    private BigDecimal fjf = BigDecimal.ZERO;

    /**
     * 水资源税
     */
    @Excel(name="水资源税",width=20)
    private BigDecimal szys = BigDecimal.ZERO;


//表二
    /**
     * 月末金额
     */
    @Excel(name="月末金额",width=20)
    private BigDecimal qmycje= BigDecimal.ZERO;

    /**
     * 实收金额
     */
    @Excel(name="实收金额",width=20)
    private BigDecimal payje= BigDecimal.ZERO;

3.实例图片
这里写图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值