查询 JasperRunManager.runReportToPdf 搜到的好文章
文章之一:
整理的JasperReport资料(转载)
整理的JasperReport资料(转载)
java开发者 网友 溪涧
多谢了!
最近工作中用到报表,而我在学习JasperReport的过程中遇到了很多问题(主要是国内的资料太少了),网上很少找得到,在此我就把我找到的一些资料和大家共享,希望能对大家有所帮助。
1、JasperReport和iReport的资源,最新版本可以到下面官方网站得到
iReport官方网站:
http://ireport.sourceforge.net
JasperReport官方网站:
http://jasperreports.sourceforge.net
2、安装
1)、JDK的安装,并配置JAVA_HOME
比如我的JAVA_HOME路径如下:
JAVA_HOME D:\Program Files\j2sdk1.4.2_03
2)、由于中文的问题,所以还需要下载:itext-1.02b.jar和iTextAsian.jar包
下载地址:http://itext.sourceforge.net/downloads/iTextAsian.jar
并在CLASSPATH中设置
例如我的CLASSPATH如下:
CLASSPATH
E:\Program Files\Apache Group\Tomcat4.1\webapps\testreport\WEB-INF\lib\itext-1.02b.jar;E:\Program
Files\Apache Group\Tomcat 4.1\webapps\testreport\WEB-INF\lib\iTextAsian.jar;E:\Program Files\Apache
Group\Tomcat 4.1\webapps\testreport\WEB-INF\lib;D:\tools\iReport0.2.3\lib
3)、iReport的安装iReport只要解压就OK,如果没有安装Ant,可以直接在iReport下的noAnt目录下,
运行startup.bat就可以了,这样iReport就可以启动了
4)、JasperReport
Jasperreport不需要任何配置,你只需将下载以后的jar包放到classpath下即可
5)、数据库的JDBC驱动包
加入到CLASSPATH中
3、详细资源
iReport官方提供了一些关于iReport视频,对于初学者很有帮助:
地址:http://ireport.sourceforge.net/docs.html
JasperReport官方提供的使用指南
地址:http://jasperreports.sourceforge.net/tutorial/index.html
JasperReport提供的一些例子:
地址:http://jasperreports.sourceforge.net/samples/index.html
4、常见问题
1)、iReport中提示框输入中文是不能正常显示,请将iReport下lib中的这个包删除tinylaf.jar
2)、在iReport中运行报表时如果出现乱码问题,请检查itext-1.02b.jar和iTextAsian.jar这两个包是否加到CLASSPATH
3)、在jsp或servlet高度报表时出现乱码或不显示,请检查你在报表设计过程中所设置的字体及其编码
比如:pdfname、pdfencoding
5、下面是两个调试例子
Servlet:
import javax.servlet.*;
import javax.servlet.http.*;
import dori.jasper.engine.*;
import java.io.*;
import java.util.*;
import java.sql.*;
/**
* @author Administrator
*
* To change the template for this generated type comment go to
* Window>Preferences>Java>Code Generation>Code and Comments
*/
public class TestReport extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Connection conn = null;
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
conn =
DriverManager.getConnection(
"jdbc:microsoft:sqlserver://192.168.0.10:1433;DatabaseName=am;user=sa;password=sa");
ServletContext servletContext =this.getServletContext();
File reportFile = new File(servletContext.getRealPath("test/iteminfo.jasper"));
Map parameters = new HashMap();
Integer i=new Integer(8);
parameters.put("pjId", i);
byte[] bytes =
JasperRunManager.runReportToPdf(
reportFile.getPath(),
parameters,
conn);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
} catch (JRException jre) {
System.out.println("JRException:" + jre.getMessage());
} catch (Exception e) {
System.out.println("Exception:" + e.getMessage());
}
}
public void doPost(
HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
JSP:
<!--page contentType="text/html;charset=GBK"-->
文章之二:
把一个JasperReports生成的PDF报告发送到用户浏览器的技巧在于,调用 net.sf.jasperreports.engine.JasperRunManager.runReportToPdf()方法。这个方法具有多个重载版本,我们在本文中使用的这个版本具有三个参数:一个字符串—描述了编译的报告(jasper文件)的绝对路径;一个实现了 java.util.Map接口的类的实例;一个实现了net.sf.jasperreports.engine.JRDataSource接口的类的实例。JasperRunManager.runReportToPdf()方法返回一个字节数组—它被作为一个参数传递给 javax.servlet.ServletOutputStream类的write()方法。我们可以从 javax.servlet.http.HttpServletResponse类的getOutputStream()方法中获得一个 ServletOutputStream的实例
从前面的例子中可以看出,获得jasper文件绝对路径的最容易的方法是调用一个实现javax.servlet.ServletContext接口的类实例的getRealPath()方法。对于本文中的简单示例来说,我们把一个java.util.HashMap空实例和一个 net.sf.jasperreports.engine.JREmptyDataSource实例作为另外两个参数传递给 JasperRunManager.runReportToPdf()方法。注意,对于更复杂的应用程序情况,一般在这些两个参数中传递一些数据。
分享到:
相关推荐
**jasperReport 亚洲语言包** jasperReport是一款强大的开源报表工具,广泛应用于Java应用程序中,用于设计、创建和展示复杂的数据报告。然而,对于包含亚洲语言(如中文、日文、韩文等)的报告,jasperReport默认...
JasperReport Server 安装手册 JasperReport Server 安装手册是一份详细的安装指南,旨在帮助用户正确地安装和配置 JasperReport Server。下面是 JasperReport Server 安装手册的主要知识点: 一、准备材料 ...
JasperReport是一款强大的开源报表工具,它主要用于设计、创建和展示复杂的业务报告。在这个"jasperreport"的测试示例中,我们关注的是如何利用JasperReport进行基本操作。JasperReport支持多种数据源,包括数据库、...
**JasperReport 实例导入详解** JasperReport 是一个开源的报表工具,它允许开发者创建复杂的报告设计,并在各种应用程序中嵌入这些报告。在这个实例中,我们将探讨如何导入并使用一个可用的 JasperReport 示例项目...
标题“使用JasperReport输出image图像”涉及到的关键技术点是JasperReport的图像生成和导出功能。在描述中提到的场景是,一个项目需要在文档中添加可识别的元素,比如条形码,然后将包含这些元素的文档作为图像保存...
JasperReport是一款强大的Java报表工具,它允许开发者创建复杂、美观的报告,广泛应用于企业级应用的报表生成。在jasperReport中,动态合并单元格是一项重要的功能,它能够根据数据的特性和需求灵活调整表格的布局,...
iReport+JasperReport柱状图开发指南 本文详细介绍了使用iReport和JasperReport开发柱状图的过程,包括确定数据源类型、开发数据源类、设计图表属性等步骤。作者分享了自己的实践经验,遇到的困难和解决方法,旨在...
本主题将深入探讨如何利用JasperReport实现动态单元格合并,支持多层分组排序和多分组动态合并单元格。 首先,我们要理解JasperReport的基本概念。JasperReport是一个基于Java的报告设计库,它允许开发者通过JRXML...
JasperReport是一个强大的Java报告库,它允许开发者创建复杂、美观的报表,广泛应用于企业级应用中。在JasperReport中,子报表是用于在主报表内部嵌套其他报表的一个功能,可以用来组织和展示更复杂的结构化数据。...
### jasperReport与Spring框架集成应用详解 #### 一、jasperReport简介及Spring环境配置 **jasperReport**是一款非常强大的报表工具,它能够基于Java环境生成多种格式的报表,如PDF、HTML、XLS(Excel)、CSV以及...
JasperReport是一款强大的开源报告生成库,主要用于设计和打印各种复杂的报表。在6.4.1版本中,它提供了丰富的功能,包括支持动态列的报表设计,这使得开发者可以根据数据的实际情况灵活调整列的数量和内容。这个...
JasperReport是一款功能强大的报表工具,它能够制作复杂的报表并具有多种数据源支持、格式化选项以及导出功能。JasperReport提供iReport Designer作为报表设计工具,它允许用户以可视化的方式设计报表布局和内容,...
** JasperReport 6.7.0:Java报表开发的核心组件** JasperReport是Java平台上的一个开源报表工具,被广泛用于生成动态业务报告。它的最新版本6.7.0提供了更多的功能和改进,以满足现代企业对数据可视化和报告的需求...
**JasperReport 概述** JasperReport 是一个开源的报告生成库,它允许开发者创建复杂的报表,并在Java应用程序、Web应用或者独立的服务器环境中进行展示。 JasperReport 提供了丰富的设计工具,支持多种数据源,...
标题中的“jasperreport生成pdf实现下载与打印”是指使用JasperReports库来创建PDF报告,并提供下载和打印功能。JasperReports是一个开源的Java报表工具,它允许开发者设计、生成和导出各种类型的报表,包括PDF、...
**jasperreport与ireport简介** jasperreport是一款强大的开源报表工具,用于生成静态和动态的报表。它支持多种数据源,包括数据库、CSV文件、JavaBeans等,并且可以将报表导出为PDF、HTML、Excel等多种格式。...
jasperReport5.6.1编码以及使用 JasperReport是一款功能强大的报表生成工具,广泛应用于各种Java应用程序中。下面是关于JasperReport5.6.1编码以及使用的详细知识点。 JasperReport编码 JasperReport编码是指在...
**标题:“JasperReport动态报表归并行数据”** **正文:** JasperReport是一款强大的开源报表工具,它允许开发者创建复杂、美观的报表,并且支持动态数据处理。在“JasperReport动态报表归并行数据”这个主题中,...
这个“JasperReport中文翻译用户手册”是专为初学者设计的指南,旨在帮助用户理解和掌握JasperReport的各项功能,从而有效地利用它来设计和展示各种数据报告。 JasperReport的核心特性包括: 1. **模板设计**:...
在Java应用中,jasperreport通常用于生成数据可视化的静态或交互式报表。这个源码项目是基于**MyEclipse**开发的,MyEclipse是一款集成开发环境(IDE),它是Eclipse的扩展,专门针对Java、Web和企业级应用程序的...