- 浏览: 396176 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
iris_1992:
2005年以前,国外开原报表完全碾压国产软件,但是现在国内软件 ...
JasperReport报表设计总结(一)(已完毕) -
水土第一:
在flash显示jasperprintlist的时候,根据下面 ...
JasperReport报表设计总结(三)(已完毕) -
水土第一:
结构分的很清晰。。。加上applet与jasper的东西就更完 ...
JasperReport报表设计总结(三)(已完毕) -
水土第一:
windowshead 写道import cn.com.rea ...
JasperReport报表设计总结(二)(已完毕) -
zwj1533:
下载的附件服务解压!
JasperReport报表设计总结(一)(已完毕)
由于在一个里面不能贴太多的代码,故放置代码在此处。
上接:http://jimmy-shine.iteye.com/blog/123595
PDF格式的:
这个。。。,貌似放出来不太合适吧
上接:http://jimmy-shine.iteye.com/blog/123595
PDF格式的:
java 代码
- /**
- * @copyRight Beijing Tsing-Tech Reachway Software Co.,Ltd.
- * @author Jimmy.Shine 2007-5-12
- */
- package cn.com.reachway.framework.report.export;
- import java.io.IOException;
- import java.io.OutputStream;
- import java.net.URLEncoder;
- import java.sql.Connection;
- import java.util.List;
- import java.util.Map;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import net.sf.jasperreports.engine.JRDataSource;
- import net.sf.jasperreports.engine.JRException;
- import net.sf.jasperreports.engine.JRExporterParameter;
- import net.sf.jasperreports.engine.JasperPrint;
- import net.sf.jasperreports.engine.export.JRPdfExporter;
- import net.sf.jasperreports.j2ee.servlets.BaseHttpServlet;
- import cn.com.reachway.framework.exception.JasperReportException;
- import cn.com.reachway.framework.report.jasperPrint.JasperPrintWithConnection;
- import cn.com.reachway.framework.report.jasperPrint.JasperPrintWithDataSource;
- /**
- *
- */
- public class PDFExport {
- /**
- * 导出报表
- *
- * @param request
- * @param response
- * @param reportFilePath
- * @param params
- * @param con
- * @param fileName
- * @throws JasperReportException
- */
- public void export(HttpServletRequest request, HttpServletResponse response, String reportFilePath, Map params,
- Connection con, String fileName) throws JasperReportException {
- JasperPrint jasperPrint = new JasperPrintWithConnection(reportFilePath, params, con).getJasperPrint();
- // 将填充完的japserPrint放入session中。
- request.getSession().setAttribute(BaseHttpServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint);
- // 拿到japserPrintList
- List jasperPrintList = BaseHttpServlet.getJasperPrintList(request);
- // 若没有JasperPrintList,则抛出异常
- if (jasperPrintList == null) {
- throw new JasperReportException("在Http Session中没有找到JasperPrint List");
- }
- try {
- OutputStream ouputStream = response.getOutputStream();
- try {
- response.setContentType("application/pdf");
- response.setCharacterEncoding("UTF-8");
- if (fileName == null || fileName.equals(""))
- response.setHeader("Content-Disposition", "inline; filename=\"noTitle.pdf\"");
- else
- response.setHeader("Content-Disposition", "inline; filename=\""
- + URLEncoder.encode(fileName, "UTF-8") + ".pdf\"");
- // 使用JRPdfExproter导出器导出pdf
- JRPdfExporter exporter = new JRPdfExporter();
- // 设置JasperPrintList
- exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrintList);
- exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, ouputStream);
- exporter.exportReport();
- } catch (JRException e) {
- e.printStackTrace();
- throw new JasperReportException("在导出pdf格式报表时发生错误");
- } finally {
- if (ouputStream != null) {
- try {
- ouputStream.close();
- } catch (IOException ex) {
- }
- }
- }
- } catch (IOException ioe) {
- ioe.printStackTrace();
- throw new JasperReportException("从Response中取得OutputStream时发生错误!");
- }
- }
- /**
- * 导出报表
- *
- * @param request
- * @param response
- * @param reportFilePath
- * @param params
- * @param dataSource
- * @param fileName
- * @throws JasperReportException
- */
- public void export(HttpServletRequest request, HttpServletResponse response, String reportFilePath, Map params,
- JRDataSource dataSource, String fileName) throws JasperReportException {
- JasperPrint jasperPrint = new JasperPrintWithDataSource(reportFilePath, params, dataSource).getJasperPrint();
- // 将填充完的japserPrint放入session中。
- request.getSession().setAttribute(BaseHttpServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint);
- // 拿到japserPrintList
- List jasperPrintList = BaseHttpServlet.getJasperPrintList(request);
- // 若没有JasperPrintList,则抛出异常
- if (jasperPrintList == null) {
- throw new JasperReportException("在Http Session中没有找到JasperPrint List");
- }
- try {
- OutputStream ouputStream = response.getOutputStream();
- try {
- response.setContentType("application/pdf");
- response.setCharacterEncoding("UTF-8");
- if (fileName == null || fileName.equals(""))
- response.setHeader("Content-Disposition", "inline; filename=\"noTitle.pdf\"");
- else
- response.setHeader("Content-Disposition", "inline; filename=\""
- + URLEncoder.encode(fileName, "UTF-8") + ".pdf\"");
- // 使用JRPdfExproter导出器导出pdf
- JRPdfExporter exporter = new JRPdfExporter();
- // 设置JasperPrintList
- exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrintList);
- exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, ouputStream);
- exporter.exportReport();
- } catch (JRException e) {
- e.printStackTrace();
- throw new JasperReportException("在导出pdf格式报表时发生错误");
- } finally {
- if (ouputStream != null) {
- try {
- ouputStream.close();
- } catch (IOException ex) {
- }
- }
- }
- } catch (IOException ioe) {
- ioe.printStackTrace();
- throw new JasperReportException("从Response中取得OutputStream时发生错误!");
- }
- }
- }
评论
11 楼
水土第一
2014-03-10
在flash显示jasperprintlist的时候,根据下面的语句只能显示第一个报表,请指教。。。
request.getSession().setAttribute(BaseHttpServlet.DEFAULT_JASPER_PRINT_LIST_SESSION_ATTRIBUTE,jlist);
request.getSession().setAttribute(BaseHttpServlet.DEFAULT_JASPER_PRINT_LIST_SESSION_ATTRIBUTE,jlist);
10 楼
水土第一
2014-02-26
结构分的很清晰。。。加上applet与jasper的东西就更完美了。。。
9 楼
zwj1533
2013-11-09
先谢谢,详细研究时再细读!
8 楼
frandick584
2013-03-12
lygydl 写道
非常感谢,不过。。。。。。作为刚入门的我,还是没有运行起来,如何架设环境?没有得到一个pdf,能不能麻烦您好人做到底?
7 楼
泡泡
2008-03-29
现在Crystal Report有个开发版对Java是免费的,比JasperReport好用多了
6 楼
lygydl
2008-03-29
非常感谢,不过。。。。。。作为刚入门的我,还是没有运行起来,如何架设环境?没有得到一个pdf,能不能麻烦您好人做到底?
5 楼
flash
2007-12-07
生成pdf的时候,字体设置好麻烦.动不动就出问题.所以还是用excel了.
4 楼
xcg1688
2007-12-04
非常感谢,不过。。。。。。作为刚入门的我,还是没有运行起来,没有得到一个pdf,能不能麻烦您好人做到底?
3 楼
palmer
2007-11-10
Thank you very much!
2 楼
neetgo
2007-09-14
呵呵,不错,谢谢楼主了...
1 楼
glassprogrammer
2007-09-13
引用
# /**
# * @copyRight Beijing Tsing-Tech Reachway Software Co.,Ltd.
# * @author Jimmy.Shine 2007-5-12
# */
# * @copyRight Beijing Tsing-Tech Reachway Software Co.,Ltd.
# * @author Jimmy.Shine 2007-5-12
# */
这个。。。,貌似放出来不太合适吧
发表评论
-
谨慎使用IDEA12的并行编译模式
2012-12-14 11:07 1231IDEA 12 提供了使用扩展工具进行并行编译的功能,但是请谨 ... -
JavaMail使用注意
2012-12-12 23:55 1023在使用JavaMail发送邮件时候,需要注意,如果在收件人中过 ... -
Take care of JPA MERGE
2012-12-12 23:52 1152在使用JPA的MERGE的时候要注意: 1、将多执行一次SE ... -
Tomcat SSL正确配置
2010-12-08 14:36 1490<Connector protocol=&quo ... -
jFreechart三种图的测试代码
2010-05-10 11:17 1886Jfreechart的最新版本,对 ... -
近期看的书
2010-03-18 21:25 1220SONY PRS600。技术类的电子书一本一本的看,记录一下: ... -
开源的宿命
2009-08-11 21:06 1229Vmware收购了Spring,这绝对是一个令人震惊的消息,我 ... -
Java生成文件时的编码的问题
2009-01-05 08:40 9670最近在做RCP应用的时候,需要生成文件,而使用编码为UTF-8 ... -
Java EE架构调查
2008-11-04 21:23 1302近期准备升级技术框架。 准备升级为: JSF + Seam + ... -
框架升级兼新书推荐
2008-10-17 09:23 1396终于可以静下心来,做框架的研发了。经过无数次的努力,将项目做到 ... -
InstallAnywhere
2008-07-21 11:25 1596随着开发系统的加大,对 ... -
Portlet
2008-07-12 20:35 1616Portlet技术已经被广泛运用,转载此文目的在于大家一窥Po ... -
以SSL加强Tomcat的安全防护能力
2008-07-11 01:55 1421关于如何在TOMCAT中使用SSL的文档。 由于插入图片太 ... -
越来越无知了
2008-07-08 22:22 1379学习知识总有一个过程,大体上是这样。 感觉自己什么都不知道-- ... -
netBeans6.1与eclipse
2008-05-24 00:42 1781为了学习JavaFX,遵照于官方教程,下载了netBeans, ... -
详细讲解Java中log4j的使用方法
2008-01-07 16:37 16671、Log4j是什么? Log4j可以帮助调试(有时候de ... -
以不合适的方式在编程
2007-12-12 20:49 1169越来越喜欢组件化的开发了,可能是对于组件化开发的喜欢。 在Ja ... -
Log4j的使用以及在Spring中集成(转)
2007-12-09 09:27 4700log4j简介 简单的说log4j ... -
JBoss Tools--eclipse开发基于B/S模式下的必备插件
2007-11-27 13:32 4190JBoss是越来越强大了,一直有使用JBoss的,自从归属于R ... -
eclipse3.4到底改变了什么,陈桥五笔无法使用
2007-11-26 09:57 1948Eclipse发布了3.4M3,内置了许多有用的新功能,最直接 ...
相关推荐
本文主要总结了JasperReport报表设计的关键点,包括报表格式定制、数据填充以及显示或打印。 首先,报表格式的定制分为两种方式。一是编写jrxml文件,这是一种XML格式的文件,用于描述报表的布局和样式。另一种方式...
在本项目中,“jasperReport测试项目(含报表设计文件).rar”是一个压缩包,包含了一系列用于JasperReport报表设计的文件,帮助我们理解和实践报表开发。 报表设计是JasperReport的核心功能,通过使用JRXML文件,...
Jaspersoft iReport Designer 5.6.0 设计器的功能很强大,它可以实现 Table 表、交叉表、子报表、多数据源等复杂的报表设计。ireport 的使用可以分为以下几步: • 设计报表模板 • 生成 XML 格式的文件 • 编译生成...
1. **设计子报表**:使用报表设计工具创建子报表的JRXML文件,定义其布局和数据绑定。 2. **编译子报表**:将子报表的JRXML文件编译成.jasper文件。 3. **在主报表中添加子报表**:在主报表的JRXML中,使用`...
要设置 subDataSets 数据源,需要在报表设计中点击“数据源”按钮,然后选择“subDataSets”,并填写数据源名称和 SQL 语句。 2. 填写数据源名称和 SQL 语句 在设置 subDataSets 数据源时,需要填写数据源名称和 ...
JasperReport提供了丰富的报表设计功能,包括自定义样式、模板、以及动态数据填充。 iReport作为JasperReport的前端设计工具,允许用户通过图形化界面来设计报表。它支持导入各种数据源,如数据库、XML文件或Java...
**JasperReport 6.4.0报表设计详解** JasperReport是一款强大的开源报表工具,广泛应用于Java应用程序中,提供灵活的报告设计和丰富的数据可视化功能。在JasperReport 6.4.0版本中,它继续提升了用户体验,增强了...
总结来说,JasperReport通过其强大的报表设计能力、灵活的数据处理和动态生成特性,为企业和开发者提供了高效便捷的报表解决方案。结合源码和配套工具,可以满足多样化的需求,提升数据展示的质量和效率。
总结,JasperReport作为一个灵活的报表工具,为开发者提供了丰富的报表设计和数据呈现方式,使其能够在各种Java应用中生成高质量的报表。配合详细的文档和开发注意事项,可以有效地提高开发效率和报表质量。对于那些...
iReport是一款开源的报表设计工具,它是基于JasperReports库开发的。用户可以通过它使用拖放界面来设计复杂的报表布局,包括表格、图表、文本等元素。iReport支持SQL查询,可以连接到各种数据库,提供了丰富的预览和...
通过以上分析,我们可以看出“JasperReport动态报表归并行数据”涉及到的核心概念包括动态报表设计、数据源处理、数据归并、自定义脚本let以及开发工具的使用。掌握这些知识点,能帮助开发者创建出适应各种业务需求...
使用ireport和struts2进行报表设计的简单示例,生成普通报表和饼图、柱状图。java工程的lib里包含丰富的jar包,且很多都是从各个网站下载的最新版本,文件夹内还包含一些ireport和jasperreport文档,适合刚入门学习...
总结一下,本知识点主要涵盖了JasperReport报表设计和预览,以及Applet和Servlet的通信机制。通过理解和实践这些概念,开发者可以构建一个基于Java的Web应用,提供动态生成和预览报表的功能。同时,了解Applet和...
1. 设计报表:使用JasperReport的报表设计工具(如iReport或Jaspersoft Studio)创建报表模板。 2. 配置Struts2:在struts.xml中定义Action,指定处理报表请求的方法。 3. 实现Action:在Action中,加载数据源,执行...
JasperReport是一个功能强大的开源报表引擎,允许开发人员通过iReports这样的设计工具以可视化的形式创建复杂的报表模板。Struts2,作为一个流行的Java Web框架,提供了一个灵活的MVC架构,使得在Web应用程序中集成...
总结来说,JasperReport+iReport的组合为开发者提供了强大的报表设计能力,不仅能够处理基础的查询展示,还能实现复杂的报表结构和数据处理。通过熟练运用iReport,可以有效地满足项目中的各种报表需求,同时保持...
**JasperReport 水晶报表** ...总的来说,JasperReport和水晶报表都是强大的报表工具,它们在数据展现、报表设计和企业应用上都有独特的优势。选择哪个工具取决于具体项目的需求、预算以及开发团队的技术背景。
【ireport-5.6.0 JasperReport 报表工具 jar包大全 Two】是一个针对Java开发人员的重要资源集合,主要用于创建、设计和管理各种复杂的报表。这个压缩包包含了一系列的jar文件,这些文件是JasperReport库的核心组成...
而JasperReport是一款强大的开源报表工具,能够帮助开发者创建、设计和展示复杂的业务报告。将两者整合,可以让SpringBoot应用程序轻松地生成和展示各种类型的报表。 在SpringBoot中整合JasperReport,首先你需要在...