导出doc

  public static void crateFile(HttpServletResponse response, SiInterview siInterview){
        XWPFTemplate template = null;
        try {
            template = XWPFTemplate
                    .compile(new ClassPathResource("/templates/约谈通知书.docx").getFile().getPath())
                    .render(
                    new HashMap<String, Object>(){{
                        put("intervieweeUnit", siInterview.getIntervieweeUnitName());
                        put("interviewee", siInterview.getIntervieweeName());
                        put("interviewPlace", siInterview.getInterviewPlace());
                        if (siInterview.getInterviewTime()!=null){
                            put("interviewTime", DateUtils.parseDateToStr("yyyy年MM月dd日 HH时mm分",siInterview.getInterviewTime()));
                        }
                        put("interviewMatter", siInterview.getInterviewMatter());
                    }});
            ServletOutputStream outputStream = response.getOutputStream();
            response.setContentType("application/octet-stream");
            response.setHeader("Content-Disposition","attachment;filename=".concat(URLEncoder.encode("约谈通知书.docx", "UTF-8")));
            BufferedOutputStream bos = new BufferedOutputStream(outputStream);
            template.write(bos);
            bos.flush();
            outputStream.flush();
            PoitlIOUtils.closeQuietlyMulti(template, bos, outputStream);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    <dependency>
            <groupId>com.deepoove</groupId>
            <artifactId>poi-tl</artifactId>
            <version>1.9.1</version>
        </dependency>

 

posted @ 2022-02-16 15:52  ±小马哥  阅读(78)  评论(0编辑  收藏  举报