jasperreport生成pdf_jasperreport 导出excel_jasperreport json(9)

电脑杂谈  发布时间:2017-02-04 10:28:36  来源:网络整理

../../../lib/commons-beanutils.jar;../../../lib/commons-collections.jar;

../../../lib/xerces.jar;../../../lib/jasperreports.jar

-Dorg.xml.sax.driver=org.apache.xerces.parsers.SAXParser

dori.jasper.view.JasperDesignViewer -XML -FFirstJasper.xml

很麻烦吧?还是赶快弄个ANT吧。下面是预览之后的结果(其实用IReport更好)

3.4报表装填(Filling Report)

报表装填(report filling)过程是JasperReport library最重要的功能。它体现了这个软件最主要的目的(main objective),因为这一过程可以自由的操作数据集(data set),以便可以产生高质量的文档。有3种材料需要装填过程中作为输入提供给JasperReport:

l report design(report templet)

l 参数(parameters)

l 数据源(data source)

这一过程的输出通常是一个单一的最终要被查看,打印或导出到其他格式的文档。

有些时候,这些JasperFillManager提供的方法不能满足某些特定的应用的要求,例如可能有人希望他的report design被作为从classpath中得到的资源,并且输出的报表作为一个文件存放在一个指定的磁盘目录下。遇到这种情况时,开发人员需要考虑在将报表设计传递给报表装填过程之前,用net.sf.jasper.engine.util.JRLoader类来装载report design对象。这样,他们就能获得像报表名这样的report design属性,于是开发者就能生成最终文档的名字(construct the name of the resulting document),并将它存放到所需的位置上。

在现实中,有许多报表装填的情境(scenarios),而装填管理器仅试图覆盖其中最常被使用到的部分。然而对于想要自己定制装填过程的人来说,只要采用上面所说的方法,任何开发者都可以达到满意的结果。

报表参数通常作为java.util.Map的value提供给装填管理器,参数名为其键值(key)。

作为装填过程所需的第三种资源—数据源,有如下两种情况:

通常,引擎需要处理net.sf.jasper.engine.JRDataSource接口的一个实例,通过这个实例,引擎可以在装填过程中获取所需数据。JasperFillManager提供的方法支持所有的JRDataSource对象(这是一个Intece,上面一章提到过它的常用实现)。

在报表中,用户可以提供SQL查询语句来从中取回报表数据(report data)。在执行期,engine唯一需要做的是获得JDBC connection对象,并使用它来连接想要连接的,执行SQL查询并取回报表数据。在后台,引擎将使用一个特殊的JRDataSource对象,但是它对于调用它的程序来说是透明的。

JasperReport工程提供了相关的例子,它们采用HSQL服务器(在工程文件中,有一个相应的文件夹),要运行这些例子你需要首先启动该服务器,方法是:在/demo/hsqldb目录下输入如下命令:>ant 或者 >ant runServer


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-30468-9.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 乃村健次
      乃村健次

      不喊话警告

    • 守卫饲料店的小狗
      守卫饲料店的小狗

      如同2楼这种贪生怕死的人多半会是汉奸

    • 户琳琳
      户琳琳

      差劲

    热点图片
    拼命载入中...