`
qtlkw
  • 浏览: 307238 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

(转)JasperReport 类介绍

    博客分类:
  • JAVA
 
阅读更多
URL: http://blog.csdn.net/archie2010/article/details/6363218
http://bbs.51cto.com/thread-488620-1.html
http://it.jimaiwang.com/posts/79.html
http://log-cd.iteye.com/blog/379531
http://yinxiangbing.iteye.com/blog/322717
http://jsfgroup.group.iteye.com/group/topic/4259
JasperReport
2.1      简介
JasperReport 是产生报表的核心部分,首先要先有个xml文件,然后根据jasperreports.dtd编译成jasper文件(以.jasper结尾),我们真正要使用的是编译以后的.jasper文件。xml文件的内容包括对报表样式的定义,数据来源,参数等等,它可以支持的输出格式:PDF,HTML,XML,XLS,CVS等。

在没有iReport之前,需要花费大量的时间去熟悉JasperReport的文档以及自己去写定义报表的xml,现在你一定对iReport的作用有些了解吧

2.2      工作流程介绍

如果我们已经用iReport已经将xml编译为.japser文件后,上图中编译部分的工作就可以省略,JasperFillManager根据定义的数据源和报表模版填充jasperPrint,有数据的报表就在这个部分填充的。如果我们要导出到不同类型的档案,则需要通过 JasperExportMananger,也可以自己写一个类,但是要实现net.sf.jasperreports.engine. JRExporter这个接口。JaserReport提供的exporter再下面一节介绍。

2.3      重要的Class和Interface详细介绍
Ø         Class net.sf.jasperreports.engine.JasperReport
这个类的对象通过net.sf.jasperreports.engine.util.JRLoader从.jasper文件中获取,为用数据填充和产生报表做准备,当用数据填充报表的时候,运行时求各种各样报表表达式的值。对象中包含了报表的各种元素,例如报表的大小,显示位置,显示的栏位,图片信息等等。

Ø         Class net.sf.jasperreports.engine.util.JRLoader

所有JasperReports 主要的功能,象报表编辑,报表填充及导出,经常用到序列化的对象,net.sf.jasperreports.engine.util.JRLoader可以帮助从文件或者URLs或者输入流中装载这些被序列化的对象。

Ø         Class net.sf.jasperreports.engine.JasperPrint

这个类的对象是通过填充类根据net.sf.jasperreports.engine.JasperReport的对象用数据填充后的结果,这样可以被很直观的被别的类引用,将报表输出到网络或者文件

Ø         Interface net.sf.jasperreports.engine.JRDataSource

JasperReports是一个非常灵活的报表工具,在数据来源方面更是体现了这一点,程序员可以自己定义不同类型的数据源,前提是实现这个接口,我们的数据源就可以千变万化,数据源可以是XML,CSV,TEXT,Object List 等等,在后面的章节详细描述如何实现该接口

Ø         Class net.sf.jasperreports.engine.export.JExcelApiExporter

报表产生到一个EXCEL文档,如果报表里面有图形,一定要用这个exporter

Ø         Class net.sf.jasperreports.engine.export.JRCsvExporter

报表产生到一个CVS文档

Ø         Class net.sf.jasperreports.engine.export.JRGraphics2Dexporter

报表输出到Graphics2D,Java2D应用的时候才会用到

Ø         Class net.sf.jasperreports.engine.export.JRHtmlExporter

报表产生到一个HTML文档

Ø         Class net.sf.jasperreports.engine.export.JRPdfExporter

报表产生到一个PDF文档

Ø         Class net.sf.jasperreports.engine.export.JRRtfExporter

报表产生到一个RTF文档

Ø         Class net.sf.jasperreports.engine.export.JRTextExporter

报表产生到一个TXT文档

Ø         Class net.sf.jasperreports.engine.export.JRXlsExporter

报表产生到EXCEL文档,用这个exporter,报表中的图形将不被输出

Ø         Class net.sf.jasperreports.engine.export.JRTextExporter

报表产生到XML文档

2.4      Exporter常用参数说明

Ø         net.sf.jasperreports.engine.JRExporterParameter. JASPER_PRINT

这个参数是net.sf.jasperreports.engine.JasperPrint的对象,exporter在导出报表前会做检测

Ø         net.sf.jasperreports.engine.JRExporterParameter. JASPER_PRINT_LIST

这个参数是包含了n个net.sf.jasperreports.engine.JasperPrint对象的java.util.List,exporter在导出报表前会做检测

Ø         net.sf.jasperreports.engine.JRExporterParameter.INPUT_STREAM

这个参数是net.sf.jasperreports.engine.JasperPrint被序列化对象的输入流,exporter在导出报表前会做检测

Ø         net.sf.jasperreports.engine.JRExporterParameter.INPUT_URL

这个参数是包含net.sf.jasperreports.engine.JasperPrint被序列化对象的URL,exporter在导出报表前会做检测

Ø         net.sf.jasperreports.engine.JRExporterParameter.INPUT_FILE_NAME

这个参数是存储了net.sf.jasperreports.engine.JasperPrint被序列化对象的文件路径,exporter在导出报表前会做检测

注意:以上几个参数不能全部为空

Ø         net.sf.jasperreports.engine.JRExporterParameter.OUTPUT_STRING_BUFFER

这个参数是java.lang.StringBuffer的对象,存储已经产生出的指定格式报表的内容

Ø         net.sf.jasperreports.engine.JRExporterParameter.OUTPUT_WRITER

这个参数是java.io.Writer的对象,将指定格式报表的内容发送到一个字符流,例如Servlet的PrintWriter

Ø         net.sf.jasperreports.engine.JRExporterParameter.OUTPUT_STREAM

这个参数是java.io.OutputStream的对象,将指定格式报表的内容发送到一个输出流,例如ServletOutputStream

Ø         net.sf.jasperreports.engine.JRExporterParameter.OUTPUT_FILE

这个参数是java.io.FILE的对象,将指定格式报表的内容存储到文件里面

Ø         net.sf.jasperreports.engine.JRExporterParameter.OUTPUT_FILE_NAME

这个参数是java.lang.String的对象,将指定格式报表的内容存储到文件里面

Ø         net.sf.jasperreports.engine.JRExporterParameter.CHARACTER_ENCODING

这个参数是java.lang.String的对象,指定格式报表的内容编码

Ø         net.sf.jasperreports.engine.JExcelApiExporterParameter.IS_FONT_SIZE_FIX_ENABLED

这个参数是java.lang.Boolean的对象,是否允许自动修正Excel每个栏位的大小

Ø         net.sf.jasperreports.engine.JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET

这个参数是java.lang.Boolean的对象,每一页是否用一个Sheet

Ø         net.sf.jasperreports.engine.JRXlsExporterParameter. IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS

这个参数是java.lang.Boolean的对象,是否移除行与行之间的空行

Ø         net.sf.jasperreports.engine.JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND

这个参数是java.lang.Boolean的对象,页面的背景是否为白的

Ø         net.sf.jasperreports.engine.JRXlsExporterParameter.SHEET_NAMES

这个参数是java.lang.String的对象,Sheet的名字

Ø         net.sf.jasperreports.engine.JRCsvExporterParameter.FIELD_DELIMITER

这个参数是java.lang.String的对象,栏位之间的分隔符

Ø         net.sf.jasperreports.engine.JRCsvExporterParameter.RECORD_DELIMITER

这个参数是java.lang.String的对象,栏位之间的分隔符

Ø         net.sf.jasperreports.engine.JRHtmlExporterParameter.IS_OUTPUT_IMAGES_TO_DIR

这个参数是java.lang.Boolean的对象,是否输出图片到目录

Ø         net.sf.jasperreports.engine.JRHtmlExporterParameter.IMAGES_DIR_NAME

这个参数是java.lang.String的对象,图片目录的绝对路径

Ø         net.sf.jasperreports.engine.JRHtmlExporterParameter.IMAGES_DIR

这个参数是java.io.File的对象,图片目录

Ø         net.sf.jasperreports.engine.JRHtmlExporterParameter.IMAGES_URI

这个参数是java.lang.String的对象,通过Web访问时图片的URI

2.5      JasperReport内置的常用参数说明

这些参数是放到java.util.Map,在填充报表的时候使用

Ø         REPORT_CONNECTION

这个参数是java.sql.Connection对象,在用Report Query的时候调用

Ø         REPORT_DATASOURCE

这个参数是实现了接口net.sf.jasperreports.engine.JRDataSource的对象,在填充报表的时候调用

Ø         IS_IGNORE_PAGINATION

这个参数是java.lang.Boolean对象,报表是否忽略分页

Ø         REPORT_MAX_COUNT

这个参数是java.lang.Integer对象,报表显示的最大记录数

Ø         DRAWING_SUPPLIER

这个参数是实现了接口org.jfree.chart.plot.DrawingSupplier对象,定义自己的填充色

这个参数不是原来JasperReport定义的,是后来加上的

2.6      JasperReport内置的常用变量说明

Ø         PAGE_NUMBER

当前页面的页码,即第几页

Ø         REPORT_COUNT

整个报表填充完成后,总的记录数

Ø         PAGE_COUNT

当前页面的记录数

Ø         COLUMN_COUNT

当前记录的行数,每个页面的计数会复位后重新计算。

2.7      如何实现接口JRDataSource

当调用填充报表过程的时候,负责填充的类会通过这个接口获取到相应的数据,jasperreport提供了几个实现了这个接口的类:

Ø         net.sf.jasperreports.engine.JRResultSetDataSource

这个是通过JDBC访问关系数据库得到的数据源

Ø         net.sf.jasperreports.engine.data.JRTableModelDataSource

这个是调用Java Swing tables得到的数据源

Ø         net.sf.jasperreports.engine.data.JRBeanCollectionDataSource

这个是调用collections得到的数据源

我们要定义自己的DataSource,需要实现下面两个方法:

²        public boolean next() throws JRException;

报表填充数据的时候,填充每一条记录之前都会调用这个方法,将指针移动到下一条数据,如果有下一条数据返回true,否则返回false。

²         public Object getFieldValue(JRField jrField) throws JRException;

当填充报表的每一个栏位的时候,会调用这个方法获取填充的值。JrField是报表里面定义显示栏位的对象。在iReport工具里面可以定义jrField的名字类型以及description

2.8      JasperReport如何绘制图形报表

JasperReport本身是不绘制图形报表的,JasperReport是通过调用JFreeChart产生的image显示到报表的页面里,所以我们还需要再了解JFreeChart,我们将再后面的章节介绍JFreeChart。

3         iReport

3.1      简介

iReport 就是一个可视化的报表制作工具,代替原来人工书写定义报表的xml,我们可以用iReport做下面的一些工作:

n         用iReport可以画出我们需要的报表的模版,例如在某个位置显示甚么内容,显示风格的定义等等

n         定义需要传给jasperReport的参数,例如前面一章将提到的内置参数,也可以自定义需要传递的参数

n         iReport的提供的功能可以预览报表

n         将报表模版的xml编译为.jasper文件,供jasperreport调用生成我们需要的报表

n         除了可以使用前面一章提到的内置变量,我们也可以定义自己的变量

3.2      报表模版布局

3.2.1 区域位置介绍

      一般情况下规则如下:

n         title

这个区域的资料整个报表只显示一次

n         pageHeader

这个区域的资料每一页的顶部显示一次

n         columnHeader

这个区域的资料每一页的顶部显示一次,位置在pageHeader的后面

n         detail

这个区域的资料有多少笔记录就显示多少次

n         columnFooter

这个区域的资料每一页的底部只显示一次,位置在pageFooter,lastPageFooter的前面

n         pageFooter

这个区域的资料每一页的底部只显示一次,如果有定义lastPageFooter,则最后一页不显示

n         lastPageFooter

这个区域的资料在报表最后一页的底部只显示一次

n         summary

这个区域的资料在最后一条记录后面显示,位置在columnFooter, pageFooter,lastPageFooter的前面

3.2.2 如何设置区域

点击工具栏的 ,会弹出下面的窗口,在Band height处输入高度后,点Apply按钮就可以了。


3.3      如何定义Fields,Parameters,Variables

报表的显示数据基本由这三个部分组成。

Fields指的是定义的数据源中对象的属性

Parameters指的是在调用填充报表的对象前,将所需要的参数放到Map对象里

Variables指的是按一定的逻辑通过调用Fields或者Parameters或者Variables组织一个计算表达式

点击工具栏 ,弹出一个对象属性的窗口

Ø         Fields

点击新增按钮增加一个field,field包括3个特性:

name:唯一标识

Class type:表示field是哪个类的对象例如:java.lang.Integer等等,不能为基本变量类型如int,double等

Description:field的描述,在特定应用时会用到,例如自己定义的xml数据源,可能需要从不同的Node获取资料,这个时候需要通过description来识别,在后面的具体制作报表的时候可以看到这点。

JasperReport会通过这几个属性产生一个JRField的对象。

在报表模版里书写的标识为$F{field name}

Ø         Variables

我们可以看到里面已经有一些变量了,这些就是在JasperReport提到的它的内置变量。

点击新增按钮,弹出的窗口中包括定义Variable name,Variable class type, Calculation type,Variable expression,Initial value expression等等。

Variable name :变量的名字可以和Fields或者Parameters的名字相同,但是不能和其他的变量名字一样

Variable class type:表示变量是哪个类的对象,例如java.lang.Integer等等,不能为基本变量类型如int,double等

Calculation type:常用的包括count,sum, average等等

Variable expression:可以是之前的$F{field name},也可以是自己或者其它的变量

Initial value expression:类型一定要和选择的Variable class type一致

在报表模版里书写的标识为$V{variable name}

Ø         Parameters

我们可以看到里面已经有一些参数的定义了,这些就是在JasperReport提到的它的内置参数。

点击新增按钮,弹出的窗口中包括定义Parameter name,Parameter class type, Parameter default value,Parameter description等等

Parameter name:参数名称,其实就是Map的key,所以参数名称不能重复

Parameter class type:表示参数是那个类的对象,即Map中key对应的对象类型

Parameter default value:表示参数为空的时候,赋与的一个值,类型必须和选择的Parameter class type一致

Parameter description:描述栏位,保留栏位

在报表模版里书写的标识为$P{parameter name}

3.4      报表模版主要元件

所有元件在正确的区域内时,当鼠标点击该元件,边框颜色均为蓝色

如果不在正确的区域时,当鼠标点击该元件,边框颜色为红色

如果多个元件重叠,当鼠标点击该元件,边框颜色为绿色

所有元件基本有共同的几个属性,右键点击元件从弹出的菜单中选择properties,弹出一个属性窗口:

Common里面包括:绑定的区域信息,绝对位置和大小,前景色,背景色等等。

Print when expression表示满足甚么条件的时候显示,表达式必须返回一个Boolean的对象

Font里面包括:字体大小,文字位置,文字字体等等,如果是中文或者是亚洲其他语言,当输出为PDF格式时候,需要设定Font是:

Language
PDF Font Name

Simplified Chinese
STSong-Light

Traditional Chinese
MHei-Medium

MSung-Light

Japanese
HeiseiKakuGo-W5

HeiseiMin-W3

Korean
HYGoThic-Medium

HYSMyeongJo-Medium

Border里面包括:边框的线条颜色,粗细,框内文字距离边框的距离等等

3.4.1 直线

点击工具栏 ,可以在报表的任意区域画一条直线

3.4.2 静态的文字

点击工具栏 ,可以在任意区域画一个文本框, 在它的属性窗口输入想要显示的文字

3.4.3 文字字段

点击工具栏 ,可以在任意区域画一个文本框,在属性框输入要显示的Field, Variable,Parameter

Textfield Expression Class:必须和定义的类型一致,目前只支持下面的类型:

java.lang.Boolean

java.lang.Byte

java.util.Date

java.sql.Timestamp

java.lang.Double

java.lang.Float

java.lang.Integer

java.lang.Long

java.lang.Short

java.math.BigDecimal

java.lang.String

Evaluation time:赋值时间一般选择now

Stretch with overflow:当文字超出边框时是否自动延长

Banlk when null:当内容为空指针的时候是否显示空格

Pattern:显示的式样,如果为Number类型或者日期类型时可以建立特定的显示式样

Textfield expression:表达式可以为$F{field},$V{variable},$P{parameter}

3.4.4 图象

点击工具栏 ,可以在任意区域插入图象,在属性窗口输入图象的来源

Image Expression:图象来源的表达式,一般情况下选择Image Expression Class为java.lang.String时,表达式为图象的绝对路径,可以通过$F{field},$P{parameter}来传递,也可以通过 Find按钮找到本地需要显示的图象路径。

Image Expression Class:图象来源的对象类型,根据不同的类型,Image Expression就要传递该类型的对象

3.4.5 子报表

点击工具栏的 ,可以在detail,summary区域插入子报表,下面是子报表的属性:

u       窗口1

Paramters Map Expression:这个是传递给子报表的参数表,类型一定是java.util.Map,子报表的参数还可以通过别的方式传递,在下面窗口2中有描述。

Connetion / Datasouce Expression:这个是子报表的数据源,一般情况下是用JRDataSource,这里写的$P{MY_DATA_SOURCE},表示子报表数据源是通过父报表参数传递的,因此要在参数表那里定义。

u       窗口2

Subreport Expression Class:子报表的类型,通常选择如图中所示的类型,这个参数也是通过父报表的参数来传递,因此要在参数中定义它。

SubReport parameters:子报表的参数,这个地方的参数和窗口1的Paramters Map功能一样,提供参数给子报表,区别是这个地方可以将父报表的一些具体的资料通过map传递给子报表。

3.4.6 图形报表

点击工具栏的 ,可以在任何区域插入它,具体的图形报表制作将在后面的章节详细描述。

3.5      编译报表

当我们画好报表模版后,保存到硬盘上的只是xml 档案,因此需要编译为.jasper的档案,

点击工具栏的 ,如果我们画好的报表没有问题,将产生一个.jasper的档案,如果有错误,将在iReport的下方信息窗口显示出错的信息,为我们纠正错误提供帮助。

4         JFreeChart

4.1      简介

主要用来开发各种各样的图形报表,这些图形报表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。在这些不同式样的图形报表上可以满足目前商业系统的要求。JFreeChart是一种基于JAVA 2D的图形报表开发技术。JFreeChart可用于Servlet、JSP、Applet、Java Appication环境中,通过JDBC可动态显示任何数据库数据,结合Itext可以输出至PDF文档。


4.2      几个重要的Class和Interface介绍

Ø         Class org.jfree.chart.ChartFactory

这个类负责产生各种图形的org.jfree.chart.JFreeChart的对象,JasperReport通过调用org.jfree.chart.ChartFactory的方法获取到相应图形的org.jfree.chart.JfreeChar的对象。


Ø         Class org.jfree.chart.JFreeChart

这个类实现了Java 2D APIs,它的目的是在Java 2D graphics device上绘出想要的图像


Ø         Interface org.jfree.data.category.CategoryDataset

用于图形生成所要的数据集对象,实现这个接口的Dataset主要用于3D数据,例如Bar,Group Bar,Line,StackedBar 等等


Ø         Interface org.jfree.data.category.PieDataset

用于图形生成所要的数据集对象,实现这个接口的Dataset主要用于2D数据,例如Pie

Ø         Interface org.jfree.chart.plot.DrawingSupplier

java.awt.Paint及java.awt.Stroke 对象的提供者,可以通过实现它自己定义Chart的颜色

Ø         Abstract Class org.jfree.chart.plot.Plot

这个抽象类以及所有子类做为org.jfree.chart.JFreeChart的代理,在Java 2D graphics device绘出坐标以及数据区域的图像

Ø         Abstract Class org.jfree.chart.renderer.AbstractRenderer

这个抽象类以及所有子类主要用在3D数据时在Java 2D graphics device绘出每个区域的颜色,每个区域轮廓的颜色,每个区域上的数值

4.3      JasperReport如何调用JFreeChart产生图形报表

JasperReport在用数据填充报表时,根据图形报表的类型,生成对应的JFreeChart的Dataset对象,再调用 org.jfree.chart.ChartFactory产生出对应的org.jfree.chart.JFreeChart对象。获取到该对象后,JasperReport在exporter里建立一个java.awt.image.BufferedImage对象,

BufferedImage返回一个java.awt.Graphics2D对象,再将它传入给之前JFreeChart对象,最后调用JFreeChart对象的draw方法将图形输出到BufferedImage对象,供给Exporter使用。

类net.sf.jasperreports.engine.design.JasperDesign

    之所以从这个类开始,是因为它的实例是jasperreport用于报表产生的原始类,比如,该类实例在用于产生报表的xml文件被解析后获得,或者不产生xml文档而是由调用jasperreport的应用程序产生。在所给的例子中有一个(noxmldesign)就是在不产生xml文件的情况下动态生成该实例的一个例子。所有该类的实例都属于报表的填充和产生以前产生的,所以我们称之为原始类。



类net.sf.jasperreports.engine.design.jasperreport

     该类实例表现了报表设计对象,是作为报表的编译过程的结果而被实例化,是向报表中填充数据的准备。在报表的编译过程中协同验证报表元素的合法性,一致性;同时创建了临时文件存储报表中所有的变量,表达式。编译过程中会先查找classpath中tools.jar或者Ant进行编译,编译结果以字节码的形式存储,并且在填充数据时用于判断多种产生报表的形式

类net.sf.jasperreports.engine.design.JasperCompileManager

该类允许用户从文件,流等多种形式编译xml,允许直接传递JasperDesign对象并接收相应的JasperReport对象,它是将报表设计xml文件编译为等待填充的报表文件的入口类。其他方法:验证报表合法性,构建JasperDesign类的实例也是十分有用的,尤其是针对可视化编辑器

类net.sf.jasperreports.engine.design.JasperPrint

报表填充完毕后产生该类的实例,这个对象可以被JasperReport内置报表浏览工具浏览,或者序列化存储、发送等。该类的实例表现了JasperReport的报表输出;除了作为标准格式以页面形式存储外还可以转化为PDF, HTML, XML等多种形式。

类net.sf.jasperreports.engine.design.JRDataSource

就报表数据来说,JasperReport是十分灵活的,提供多种数据源,针对各种数据源都有相应的编程接口,每次报表填充时,都会产生特定场景的引擎实例

net.sf.jasperreports.view.JasperViewer
此类用来预览生成的报表(generated reports.)。

net.sf.jasperreports.view.JasperDesignViewer
此类用来预览报表设计(view the report design)

<%@ page import="dori.jasper.engine.*" %>
  <%@ page import="java.util.*" %>
  <%@ page import="java.io.*" %>
  <%@ page import="java.sql.*" %>
  <%
   File reportFile = new File(application.getRealPath("/reports/mydoc5.jasper"));
   Map parameters = new HashMap();
  
   Class.forName("org.gjt.mm.mysql.Driver").newInstance();
   String url ="jdbc:mysql://localhost/clients?user=sa&password=&useUnicode=true&characterEncoding=GB2312";
   Connection conn= DriverManager.getConnection(url);
  
   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();
  
  %>
   note:
   1)<%@ page contentType="text/html;charset=gb2312"%> 这句话不能有,不然会提示下载
   2)从数据库中获取中文数据Encoding=GB2312是必须的
分享到:
评论

相关推荐

    JasperReport报表设计总结

    本文详细介绍了JasperReport的基本概念、设计方式、数据源配置以及集成部署等方面的内容。通过本文的学习,读者可以更好地理解和掌握如何使用JasperReport进行报表设计与开发。随着对JasperReport的深入了解,开发者...

    jasperreport教程

    【JasperReport教程】 JasperReport是一款开源的报表生成工具,它允许...以上就是JasperReport的基本介绍和使用方法,通过熟练掌握这些知识点,开发者可以构建出功能丰富的报表系统,满足企业对数据分析和展示的需求。

    JasperReport+iReport 报表工具详细开发手册

    ### JasperReport+iReport 报表工具详细开发手册 ...以上就是关于JasperReport+iReport 报表工具的详细介绍,通过本文档的学习,相信您可以更好地理解和掌握如何使用这两款工具来设计和生成报表。

    jasperReport资料文档5

    通过以上介绍可以看出,JasperReports支持多种非数据库数据源,使得开发者能够在没有数据库连接的情况下也能生成报表。无论是简单的静态文本还是复杂的多维数据集,都可以通过不同的数据源类型来满足需求。这对于...

    jasperreport ant运行以及启动hsqldb服务

    通过上述介绍,我们了解了JasperReports的基本概念、功能特点以及如何通过Ant进行自动化构建。同时,我们也探讨了如何使用Ant来启动HSQLDB服务。这些技能对于开发人员来说非常实用,尤其是在需要生成复杂报表或集成...

    JasperReport+iReport报表工具详细开发手册

    在Web方面,本手册将介绍如何将JasperReport报表集成到Web应用程序中。其中提到了JasperReportWeb,意味着如何在Web项目中使用JasperReport生成的报表。通过一个名为reportRun.jsp的JSP页面来展示报表,这里的...

    jasperreport+struts2包

    1. **添加依赖**:首先,需要在项目的类路径下添加jasperreport和Struts2的库文件。在Maven项目中,可以在pom.xml文件中添加对应的依赖。 2. **报表设计**:使用iReport或Jaspersoft Studio设计报表模板,并保存为....

    JasperReport+iReport报表学习资料

    具体而言,需要将JasperReport本身及其依赖的第三方库复制到项目的类路径中。其中,JasperReport本身的JAR包位于安装包中的`dist`目录下,而第三方依赖库则位于`lib`目录下。 #### 三、入门篇 - **iReport入门**:...

    JasperReport开发(一)

    `.jasper`文件相当于编译后的Java类文件,是JasperReport进行数据填充和转换的基础。 - **Jrprint**:填充完数据的临时文件,用于输出报表。`.jrprint`文件是在报表填充后生成的,它包含了所有报表数据和格式信息。 ...

    JasperReport+iReport报表工具详细开发手册.pdf

    本文档主要介绍了JasperReport和iReport的基本使用方法、高级功能以及一些实用技巧,帮助开发者更好地掌握这两个工具的应用。 #### 二、安装 ##### 2.1 iReport安装 iReport的安装过程较为简单。首先,从官方网站...

    jasperReport资料文档3

    - **工具介绍**:JasperReports提供了一个预览工具——`JasperDesignViewer`,它可以帮助开发者在不编译和填充数据的情况下快速查看报表的设计效果。 - **实现方式**:`JasperDesignViewer`是一个独立的Java应用程序...

    iReport-JasperReport 报表开发指南

    `JRAbstractScriptlet` 类提供了一种方便的方式来编写报表脚本。 #### 十二、模板 ##### 12.1 模板结构 模板是一种预定义的报表布局,可以用来快速创建相似的报表。模板可以保存为 `.jrxml` 文件,并且可以复用。...

    jasperreport iReport用户手册(PDF)翻译:董岿

    ### jasperreport iReport 用户手册知识点 #### 一、序言 **iReport** 是一个图形界面工具,用于设计和创建 **JasperReports** 的报表模板。它为开发者提供了直观的操作方式来创建复杂的报表。 ##### 1.1 什么是...

    japser实现批量打印

    本实例将详细介绍如何利用iReport和JasperReports来实现批量打印的功能。 首先,我们需要理解JasperReports的基本工作流程。JasperReport的设计是基于一个名为`.jrxml`的XML文件,这个文件包含了报表的所有布局和...

    BI开源项目现状和对比分析.doc

    - **报表引擎组件**:JasperReport、JFreeChart、JfreeReport和BIRT用于生成各种类型的报表,如图表、表格和仪表盘。 - **数据挖掘组件**:Weka是一个强大的数据挖掘和机器学习工具集,支持分类、聚类、关联规则...

    ireport+javabean

    2. 编写JavaBean类:创建JavaBean类,这个类需要实现JasperReport的接口,以便将数据源嵌入到JasperReport中。 3. iReport导入数据源:在iReport设计工具中导入刚才创建的JavaBean类,作为数据源。 4. 打印报表:...

    ireport导出excel 部分源码

    这涉及到多个类和技术的应用,下面我们将详细介绍相关的知识点。 ### 导出Excel的关键代码解析 #### 导入必要的包 首先,我们看到代码中导入了一系列的包,其中包括处理文件输入输出的类、反射相关的类、用于日志...

    Flex打印(转)

    2. **Flex打印API**:介绍Flex SDK中用于打印的API,如`flash.printing.PrintJob`类,以及如何设置打印参数,如纸张大小、方向等。 3. **Flex组件布局**:如何调整Flex组件以适应打印需求,例如创建适合打印的布局...

Global site tag (gtag.js) - Google Analytics