JasperReport报表技术导出PDF报表(使用IReport设计工具 )
2017-08-01 22:54
731 查看
首先用户使用Ireport工具设计 jasperReport报表模板,在程序通过动态数据,结合模板生成报表 !JasperReport生成PDF依赖IText,生成图表依赖Jfreechart :(注意:在用工具画图时不要太大,否则导出的PDF文件将不完整)
Java代码
注意:region.jrxml 为 JasperReport工具链接数据库生成的文件(所需要导出的资源)
如果启动Tomcat报错:找不到相应的类的话,多数原因是Jar包冲突! 查看web模块的依赖树,找到冲突的包,采用高版本的排除低版本
//如果是maven工程要引入相应的jar包 <!-- groovy --> <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>2.2.0</version> </dependency> <!-- jasperreport --> <dependency> <groupId>net.sf.jasperreports</groupId> <artifactId>jasperreports</artifactId> <version>5.2.0</version> <exclusions> <exclusion> <groupId>com.lowagie</groupId> <artifactId>itext</artifactId> </exclusion> </exclusions> </dependency>
Java代码
注意:region.jrxml 为 JasperReport工具链接数据库生成的文件(所需要导出的资源)
@Autowired private DataSource dataSource; @Action(value="regionAction_exportJaspar") public String exportJaspar(){ try { // 1: 加载设计文件 report2.jrxml String path = ServletActionContext.getServletContext().getRealPath("/jr/region.jrxml"); // 2: 报表 parameter 赋值 需要Map集合 parameters为 region.jrxml里面设置的 Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("company", "杰瑾工作室"); // 3: 编译该文件 JasperCompilerManager JasperReport report = JasperCompileManager.compileReport(path); // 4: JapserPrint = JasperFillManager.fillReport(report,map,connection) JasperPrint jasperPrint = JasperFillManager.fillReport(report, parameters, dataSource.getConnection()); // 5: 下载 准备一个流 两个头 HttpServletResponse response = ServletActionContext.getResponse(); ServletOutputStream outputStream = response.getOutputStream(); String filename = "工作单报表.pdf"; response.setContentType(ServletActionContext.getServletContext().getMimeType(filename)); response.setHeader("Content-Disposition", "attachment;filename=" + DownLoadUtils.getAttachmentFileName(filename, ServletActionContext.getRequest().getHeader("user-agent"))); // 6: JapdfExport 定义报表输出源 JRPdfExporter exporter = new JRPdfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, outputStream); // 7: 导出 exporter.exportReport(); outputStream.close(); } catch (Exception e) { e.printStackTrace(); } return NONE; }
如果启动Tomcat报错:找不到相应的类的话,多数原因是Jar包冲突! 查看web模块的依赖树,找到冲突的包,采用高版本的排除低版本
相关文章推荐
- 使用ireport设计jasperreport报表模板,以及简单的设计使用案例
- Jasperreport+iReport报表设计(二)通用导出页面
- 用ireport设计报表,通过jasper实现pdf导出及打印
- JasperReport+iReport高级报表设计实战
- JasperReport+iReport高级报表设计实战
- iReport-JasperReport报表开发:使用JRDataSource填充含有SubDataset的报表
- 使用 iReport工具 将report 和 subreport部署到 jasperserver上去 子报表 实现
- ireport+jasperreport开源报表中使用javabean作为数据源的详细实现过程
- jasperreport整合structs2导出PDF,Excel等报表
- jasperreport生成html,Excel,PDF报表,数据源使用List
- [Jasper使用总结]iReport报表设计-动态列实现
- 用开源技术jasperreport做打印,第一步使用ireport设计报表
- jasperReport+ireport实现报表导出和数据分析
- 使用iReport+jaspereport输出PDF报表时的中文问题
- 使用ireport+jasperReport报表生成
- Jasperreport+iReport报表设计(三)字体问题
- JasperReport+iReport高级报表设计实战
- JasperReport+iReport高级报表设计实战
- JasperReport+iReport高级报表设计实战
- Jasperreport+iReport报表设计(一)环境配置