Spring + jasperreport (2)

북마크 추가

WORD DOCX 문서 출력

Multiformat-view에서는 docx 형식의 출력을 지원하지 않는다. 따라서 JasperPrintJRDocxExporter를 사용하여 출력한다.

Excel 형식으로 출력하고 하는 경우 JRDocxExporter 대신 JRXlsExporter를 사용한다.

1.WEB-INF\reports\ 폴더 안에 iReport로 디자인한 jasper 파일을 넣는다.
2.ReportController.java

 

 @Controller

  public class ReportController {

  @RequestMapping(value = "/reports/test.do")

  public ModelAndView test(

  @ModelAttribute(“testVO") TestVO testVO,

  Map<String, Object> map, ModelMap model) throws Exception{

//---본인 프로젝트에 맞는 방법으로 쿼리를 실행하여 값을 리스트에 담는다---

          List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();

          URL location = getClass().getResource("/파일명.jasper");

          String reportPath = location.getPath();                       //      jasper파일의 경로를 불러와 reportPath에 저장한다.

          JRBeanCollectionDataSource src = new JRBeanCollectionDataSource(list);     //    listdatasource를 만든다.

 

          JasperPrint jasperPrint = JasperFillManager.fillReport(reportPath, new HashMap() ,src);

          JRDocxExporter exporter = new JRDocxExporter();

        

         exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);

         exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, “저장할 경로”+“파일명.docx”);

         exporter.exportReport();                                                       //        지정한 경로에 docx 파일이 생성된다. 

 

 

 

AD
관리자
2014-07-13 13:09
SHARE