基于easypoi的导出

479
@RequestMapping("/export")
    @ResponseBody
    public void export(HttpServletResponse response) throws IOException
    {
        List<BizRecruit> list = bizRecruitService.list(Wrappers.<BizRecruit>lambdaQuery().orderByDesc(BizRecruit::getCreateTime));
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("titlename"),
                BizRecruit.class, list);
        ServletOutputStream outputStream = null;

        // 判断数据
        if(workbook == null) {
            return;
        }
        // 设置excel的文件名称
        String excelName = "excelName" ;
        // 重置响应对象
        response.reset();
        // 当前日期,用于导出文件名称
        DateTime date = DateUtil.date();
        String dateStr = URLUtil.encode(excelName) + DateUtil.format(date, "yyyyMMddHHmmss");
        // 指定下载的文件名--设置响应头
        response.setHeader("Content-Disposition", "attachment;filename=" +dateStr+".xls");
        response.setContentType("application/msexcel;charset=UTF-8");
        try
        {
            outputStream= response.getOutputStream();
            workbook.write(outputStream);
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }finally
        {
            if(outputStream!=null)
            {
                outputStream.flush();
                outputStream.close();
            }
        }
    }