`

JasperReport

 
阅读更多

 查询  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 亚洲语言包** jasperReport是一款强大的开源报表工具,广泛应用于Java应用程序中,用于设计、创建和展示复杂的数据报告。然而,对于包含亚洲语言(如中文、日文、韩文等)的报告,jasperReport默认...

    jasperreport

    JasperReport是一款强大的开源报表工具,它主要用于设计、创建和展示复杂的业务报告。在这个"jasperreport"的测试示例中,我们关注的是如何利用JasperReport进行基本操作。JasperReport支持多种数据源,包括数据库、...

    JasperReport实例导入可用

    **JasperReport 实例导入详解** JasperReport 是一个开源的报表工具,它允许开发者创建复杂的报告设计,并在各种应用程序中嵌入这些报告。在这个实例中,我们将探讨如何导入并使用一个可用的 JasperReport 示例项目...

    JasperReport Server安装手册

    JasperReport Server 安装手册 JasperReport Server 安装手册是一份详细的安装指南,旨在帮助用户正确地安装和配置 JasperReport Server。下面是 JasperReport Server 安装手册的主要知识点: 一、准备材料 ...

    使用JasperReport输出image图像

    标题“使用JasperReport输出image图像”涉及到的关键技术点是JasperReport的图像生成和导出功能。在描述中提到的场景是,一个项目需要在文档中添加可识别的元素,比如条形码,然后将包含这些元素的文档作为图像保存...

    jasperReport 动态合并单元格示例

    JasperReport是一款强大的Java报表工具,它允许开发者创建复杂、美观的报告,广泛应用于企业级应用的报表生成。在jasperReport中,动态合并单元格是一项重要的功能,它能够根据数据的特性和需求灵活调整表格的布局,...

    iReport+JasperReport柱状图

    iReport+JasperReport柱状图开发指南 本文详细介绍了使用iReport和JasperReport开发柱状图的过程,包括确定数据源类型、开发数据源类、设计图表属性等步骤。作者分享了自己的实践经验,遇到的困难和解决方法,旨在...

    jasperreport一个子报表的例子

    JasperReport是一个强大的Java报告库,它允许开发者创建复杂、美观的报表,广泛应用于企业级应用中。在JasperReport中,子报表是用于在主报表内部嵌套其他报表的一个功能,可以用来组织和展示更复杂的结构化数据。...

    基于Jasperreport动态单元格合并模板

    本主题将深入探讨如何利用JasperReport实现动态单元格合并,支持多层分组排序和多分组动态合并单元格。 首先,我们要理解JasperReport的基本概念。JasperReport是一个基于Java的报告设计库,它允许开发者通过JRXML...

    jasperReport +spring 的使用

    ### jasperReport与Spring框架集成应用详解 #### 一、jasperReport简介及Spring环境配置 **jasperReport**是一款非常强大的报表工具,它能够基于Java环境生成多种格式的报表,如PDF、HTML、XLS(Excel)、CSV以及...

    jasperreport 6.4.1报表动态列,以及生成导出html

    JasperReport是一款强大的开源报告生成库,主要用于设计和打印各种复杂的报表。在6.4.1版本中,它提供了丰富的功能,包括支持动态列的报表设计,这使得开发者可以根据数据的实际情况灵活调整列的数量和内容。这个...

    Jasperreport中文版.pdf

    JasperReport是一款功能强大的报表工具,它能够制作复杂的报表并具有多种数据源支持、格式化选项以及导出功能。JasperReport提供iReport Designer作为报表设计工具,它允许用户以可视化的方式设计报表布局和内容,...

    最新版本jasperreport6.7.0官网下载版本

    ** JasperReport 6.7.0:Java报表开发的核心组件** JasperReport是Java平台上的一个开源报表工具,被广泛用于生成动态业务报告。它的最新版本6.7.0提供了更多的功能和改进,以满足现代企业对数据可视化和报告的需求...

    jasperreport需要的jar包

    **JasperReport 概述** JasperReport 是一个开源的报告生成库,它允许开发者创建复杂的报表,并在Java应用程序、Web应用或者独立的服务器环境中进行展示。 JasperReport 提供了丰富的设计工具,支持多种数据源,...

    jasperreport 生成pdf实现下载与打印

    标题中的“jasperreport生成pdf实现下载与打印”是指使用JasperReports库来创建PDF报告,并提供下载和打印功能。JasperReports是一个开源的Java报表工具,它允许开发者设计、生成和导出各种类型的报表,包括PDF、...

    jasperreport+ireport创建javaBean多数据源报表

    **jasperreport与ireport简介** jasperreport是一款强大的开源报表工具,用于生成静态和动态的报表。它支持多种数据源,包括数据库、CSV文件、JavaBeans等,并且可以将报表导出为PDF、HTML、Excel等多种格式。...

    jasperReport5.6.1编码以及使用

    jasperReport5.6.1编码以及使用 JasperReport是一款功能强大的报表生成工具,广泛应用于各种Java应用程序中。下面是关于JasperReport5.6.1编码以及使用的详细知识点。 JasperReport编码 JasperReport编码是指在...

    JasperReport动态报表归并行数据

    **标题:“JasperReport动态报表归并行数据”** **正文:** JasperReport是一款强大的开源报表工具,它允许开发者创建复杂、美观的报表,并且支持动态数据处理。在“JasperReport动态报表归并行数据”这个主题中,...

    JasperReport中文翻译用户手册.pdf

    这个“JasperReport中文翻译用户手册”是专为初学者设计的指南,旨在帮助用户理解和掌握JasperReport的各项功能,从而有效地利用它来设计和展示各种数据报告。 JasperReport的核心特性包括: 1. **模板设计**:...

    jasperreport 生成pdf,html,xml,csv,xls报表,myeclipse源码

    在Java应用中,jasperreport通常用于生成数据可视化的静态或交互式报表。这个源码项目是基于**MyEclipse**开发的,MyEclipse是一款集成开发环境(IDE),它是Eclipse的扩展,专门针对Java、Web和企业级应用程序的...

Global site tag (gtag.js) - Google Analytics