这篇文章将为大家详细讲解有关iReport如何生成pdf打印,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
先下载ireport版本 ,我下载的是 iReport-5.0.4 编辑模板 employees_identity_print_templet
@RequestMapping("printEmpPdf") @ResponseBody public Result printEmpPdf(HttpServletRequest request,HttpServletResponse response, Parameter parameter){ Result result=Result.getInitializedResult(); try{ parameter = generateParameter(parameter, request); Map<String,Object> map= parameter.getParam(); List<EmployeeVO> employeeVOList=employeeBiz.printPdfBarcode(map); // 报表数据源 JRDataSource jrDataSource = new JRBeanCollectionDataSource(employeeVOList); //模板地址 String jasperSource_adidas= CommonUtils.getAllMessage("jdbc","EMPLOYEES_IDENTITY_PRINT_PDF_TEMPLET")+"employees_identity_print_templet.jasper"; File reportFile = new File(jasperSource_adidas); Map<String, Object> param_common=new HashMap<String, Object>(); param_common.put("subReport",jasperSource_adidas); JasperPrint jasperPrint; jasperPrint = JasperFillManager.fillReport(reportFile.getPath(), param_common, jrDataSource); String fullPath = String.valueOf(System.currentTimeMillis()).concat("_员工列表.pdf"); //生成PDF文件保存地址 String filePdfUrl= CommonUtils.getAllMessage("jdbc","IREPORT_FILE_URL"); JRPdfExporter pdfExporter = new JRPdfExporter(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); pdfExporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint); pdfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos); pdfExporter.exportReport(); byte[] bytes = baos.toByteArray(); File file=new File(filePdfUrl+fullPath); WebUtil.writeByteArrayToFile(file,bytes); result.baseSucResult(fullPath); }catch (Exception e){ result.baseFailResult("EmployeeController printEmpPdf error",parameter); logger.error("EmployeeController printEmpPdf error",e); } return result; }
这是需要的maven 包
<dependency> <groupId>net.sf.jasperreports</groupId> <artifactId>jasperreports</artifactId> <version>5.6.0</version></dependency><dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>2.2.2</version></dependency><!-- iReport PDF中文支持 --><dependency> <groupId>com.lowagie</groupId> <artifactId>itextasian</artifactId> <version>2.1.7.js2</version></dependency><dependency> <groupId>com.lowagie</groupId> <artifactId>itext</artifactId> <version>2.1.7.js2</version></dependency><dependency> <groupId>net.sourceforge.barbecue</groupId> <artifactId>barbecue</artifactId> <version>1.5-beta1</version></dependency><dependency> <groupId>ireport</groupId> <artifactId>ireport-utils</artifactId> <version>2.0.1</version></dependency><dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2</version></dependency><dependency> <groupId>commons-digester</groupId> <artifactId>commons-digester</artifactId> <version>1.8</version></dependency>
关于“iReport如何生成pdf打印”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。