`

jasperreport导出报表到html、pdf

阅读更多

 

JFreeChart需要包: jfreechart-1.0.3.jar jcommon-1.0.6.jargnujaxp.jar

JasperReport需要包:

commons-beanutils-1.7.jar;commons-collections-2.1.jar;commons-digester-1.7.jar;

commons-logging-1.0.2.jar;commons-logging-api-1.0.2.jar;itext-1.3.1.jar;

jasperreports-1.3.3.jar;jdt-compiler-3.1.1.jar;jxl-2.6.jar;png-encoder-1.5.jar;poi-2.0-final-20040126.jar

 

一、导出报表到html

 

InputStream inputStream = ServletActionContext.getServletContext().getResourceAsStream("/report/xxx.jasper");
Collection<xxxo> data=xxxService.getData(params);
Map<Object,Object> map=xxxService.getMap(startTime, endTime);

JRBeanCollectionDataSource dataSource=new JRBeanCollectionDataSource(data);
//填充报表
JasperPrint jasperPrint = JasperFillManager.fillReport(inputStream,map, dataSource);
//设置输出类型及报表的内置参数
response.setContentType("text/html");
OutputStream outputStream=response.getOutputStream();
ReportXHtmlExporter htmlExporter=new ReportXHtmlExporter(page,jasperPrint);
request.getSession().setAttribute(ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE,jasperPrint);
htmlExporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
htmlExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, outputStream);
if(jasperPrint.getPages().size()>1){
	htmlExporter.setParameter(JRExporterParameter.PAGE_INDEX, 1);
}
htmlExporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN,Boolean.FALSE);
htmlExporter.exportReport();
outputStream.flush();
outputStream.close();
 

二、导出到PDF

 

OutputStream outputStream=response.getOutputStream();
File reportFile = new File(ServletActionContext.getServletContext().getRealPath("/report/xxx.jasper"));
if (!reportFile.exists()){
	throw new JRRuntimeException("File dispatch_report.jasper not found.");
}
JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath());

//javabean数据源
Collection<xxx> data=xxxService.getData(params);
Map<Object,Object> map=xxxService.getMap(startTime, endTime);
JRBeanCollectionDataSource dataSource=new JRBeanCollectionDataSource(data);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,map, dataSource);

JRPdfExporter pdfExporter=new JRPdfExporter();
pdfExporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
pdfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, outputStream); 
response.setContentType("application/pdf");
response.setCharacterEncoding("UTF-8");  
response.setHeader("Content-Disposition", "attachment; filename=\""  + URLEncoder.encode("XXX报表", "UTF-8") + ".pdf\""); 
pdfExporter.exportReport();
outputStream.flush();
outputStream.close();
 

三、web.xml配置

 

<!--JasperReport显示图片的,象素图片-->
	<servlet>
		<servlet-name>ImageServlet</servlet-name>
		<servlet-class>net.sf.jasperreports.j2ee.servlets.ImageServlet</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>ImageServlet</servlet-name>
		<!-- /report/image路径,report表示struts中的表空间(具体就看url请求的路径),image表示Action文件里配置image?image=问号前的image相同-->
		<url-pattern>/report/image</url-pattern>
	</servlet-mapping>
 

 

 

分享到:
评论

相关推荐

    使用jasperreports制作报表(导出pdf excel html)

    NULL 博文链接:https://qdjinxin.iteye.com/blog/350194

    iReport 4.0.1 + JasperReport 导出Html和PDF报表例子源码

    iReport 4.0.1 导出Html和PDF报表完整例子

    struts2+Ireport+Jasperreport实现报表导出

    该工程下有ssh所需jar包,hicharts报表导出功能所需jar包,以及Jasperreport报表导出所需的jar包,主要是利用Jasperreport实现报表导出功能,可以完整跑通

    jasperreports导出html,pdf,xls报表

    jasperreports导出html,pdf,xls报表,spring-boot加maven,使用jasperreports6.0,不存在中文乱码问题

    JasperReport与Java程序,导出不同格式的报表,包括pdf,excel,html,报表打印等功能

    使用开源报表jasperReport,并结合irport前端报表设计器,使用Java程序实现报表的不同格式的导出,包括pdf,excel,html,打印预览等功能,程序包含所需Jar包,并有详细的注释

    SSH集成JasperReport例子,支持预览导出Exce导出Pdf

    一个使用SSH集成JasperReport的例子,支持预览、导出Excel、导出Pdf。 部署到Tomcat服务器可运行,该例子中采用了一个报表框架,框架的类图结构可参考压缩包中的“报表设计.jpg”。 希望对您有帮助。

    JasperReport 客户端 打印 导出PDF XLS

    JasperReport 打印 导出PDF XLS 这是我们公司架构师搭的一套架构,封装好了打印 导出功能,其他的报表只要实现这个机制就能完成功能了,该抽象的都抽象出来了,只有一个view.jsp页面。

    JasperReport浏览器输出PDF为空白页的解决方案

    NULL 博文链接:https://donald-draper.iteye.com/blog/2301345

    使用JasperReport输出image图像

    asperReport的应用,发现大部分都是讲如何将jasper导入一个html或pdf进行打印的例子,并没有直接将jasperReport打印生成一个图像的示例。包括jaspe自带的demo里面,所以有高手就写了如何生成图片的方法

    JasperReport+iReport报表开发手册.zip

    成 PDF,HTML,或者 XML 格式。它有一个相关的开源工程--IReport,这是一个图形化的辅 助工具,主要用于数据报表设计。JasperReports 完全是由 Java 写成,可以应用于 Java 的应用 程序,包括 J2EE,Web 应用程序中...

    jasperreport6 导出pdf中文不显示问题解决方式

    本文档描述了如何解决导出pdf文件中文不显示问题。jasperreport6版本以上已经对pdf font name、pdf encoding等配置弃用,而改为使用font配置字体,所以以前使用itext jar包的方式已经不能解决pdf中文不显示问题,...

    jasperReport iReport使用手顺

    由于项目需要出图形报表,所以个人做了jasperReport和iReport的技术调查.并且整理成了这个文档,记录了这两个开源工具的使用...8.JasperReportAPI导出PDF报表 9.JasperReportAPI导出子报表 10.两个工具使用时的常见问题

    Jasperreport+ireport 实践操作及web应用

    学习完jasperreports+ireport,给我感觉深刻,不仅掌握了报表开发技术,还掌握了如何在web中生成pdf,xls,rtf文件,以下是jasperreports+ireport开发知识点: 1.字段,变量,参数,传参 ...9.导出pdf,xls,html...

    jasperreport 6.1.1 webapp demo 功能修改和完善 整个工程

    基于jasper report 6.1.1版本的demo...1、支持普通报表、表单、子报表、交叉表、图表的html预览、导出和服务端打印 2、支持flash报表预览 3、解决pdf导出中文乱码问题 4、支持客户端jatoolsPrinter打印(仅限ie浏览器)

    Java报表数据可视化视频讲解

    视频详细讲解,需要的小伙伴自行网盘下载,链接见附件,永久有效。 1、课程简介 报表[forms for reporting to the higher organizations],就是向上级...l JasperReport 第五天 l JfreeCharts l HighCharts l ECharts

    struts2 + JasperReport项目

    struts2结合jasperreport的一个小项目,做了一张销售统计表,导出方式有5种(html,xml,pdf,cvs,xls)。 主要用到MyEclipse插件JasperAssistant图形开发工具来设计报表,设计的报表有源文件jasperDemo.jrxml和编译后...

    IReport使用说明

    jasperreport 设计工具ireport的使用方法、使用步骤和使用是要注意的问题。在设计报表时,如何可以更好的反报表的风格统一

    jasperreports6.0.0相关jar

    asperReports是一个非常强大,易用的开源报表引擎,它是用Java编写的。它可以通过各种各样的数据源来生成像素级的文档,这些文档都可以查看,打印以及导出(文档格式包括HTML、PDF、Excel、Word等等)

    基于jbpm与activiti的工作流平台技术架构介绍

    目前支持FineReport及Jasper Report两种报表引擎,前者是商业报表,其功能非常强大,可以实现多样式数据呈现方式,支持HTML、PDF、EXCEL、Word、TXT、Flash样式呈,能完美解决中国式报表难题,无论数据库内原始数据...

Global site tag (gtag.js) - Google Analytics