第12章Struts2整合JasperReports开发.ppt

上传人:sccc 文档编号:6042965 上传时间:2023-09-17 格式:PPT 页数:29 大小:634.52KB
返回 下载 相关 举报
第12章Struts2整合JasperReports开发.ppt_第1页
第1页 / 共29页
第12章Struts2整合JasperReports开发.ppt_第2页
第2页 / 共29页
第12章Struts2整合JasperReports开发.ppt_第3页
第3页 / 共29页
第12章Struts2整合JasperReports开发.ppt_第4页
第4页 / 共29页
第12章Struts2整合JasperReports开发.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《第12章Struts2整合JasperReports开发.ppt》由会员分享,可在线阅读,更多相关《第12章Struts2整合JasperReports开发.ppt(29页珍藏版)》请在三一办公上搜索。

1、第12章 Struts 2整合JasperReports开发,对于大部分企业级应用,通常需要生成大量报表。开发者可以通过手动地编写HTML页面从而生成并显示报表,显然这种开发方式效率低下而且比较复杂。同样开发者也可以使用报表生成工具如JasperReports,通过这些工具支持可以非常轻松的生成报表。Struts 2提供了JasperReports插件支持,借助于该插件,Struts 2可以非常方便和容易的使用JasperReports来生成报表。,12.1 初涉JasperReports,12.1.1 JasperReports简介 12.1.2 下载并安装JasperReports和iRe

2、port,12.1.1 JasperReports简介,本章来推荐一款非常好的报表生成工具JasperReports。和JFreeChart一样,JasperReports同样是开源项目,可以免费使用。并且该项目完全由Java编写,使用它可以在Java桌面程序或者Java Web应用中生成报表。JasperReports功能是非常强大的,而且其非常容易上手。只用给出一份XML格式的报表设计文件,对其进行编译、填充、导出,就可以生成多种格式的报表文件。包括PDF、HTML、Excel、XLS等。相比传统的只能生成HTML文档或其他单一格式文档的报表生成工具,JasperReports显得非常强大

3、。通过Struts 2提供的JasperReports插件,可以非常方便和简单的通过JasperReports生成报表。,12.1.2 下载并安装JasperReports和iReport,首先登录JasperReports的官方站点http:/www.jasperforge.org,下载JasperReports和iReport,如图12-1所示。Ireport是可以用来可视化的设计报表设计文件,借助iReport可以非常方便和快速地设计出精美的报表。JasperReports和iReport的最新版本为2.0.5,下载其压缩包。解压缩其中的jasperreports-2.0.5-proje

4、ct.zip文件,如图12-2所示。,12.1.3 设计报表,下面来创建一份报表设计文档myFirst.jrxml,该文档中包含大量的JasperReports标签,标签非常之多,用户没必要也不可能去一一记住,代码如下所示。(详细内容请参照本书),12.1.4 显示报表,要显示报表必须经过以下流程。使用JasperCompileManager类将报表设计文件编译,并生成jasper文件后缀名的报表文件。使用JasperFillManager填充编译后的报表文件,并生成jrprint后缀名的文件。使用JasperExportManager将jrprint文件导出成各种格式报表文件,或直接使用JR

5、Viewer显示报表。通过该流程编写显示报表程序,代码如下所示。,12.2 使用iReport设计报表,前面介绍了如何手动的编写程序来编译报表设计文件,以及填充报表和现实报表。但是这种方式显然过于复杂以及费时。iReport提供了可视化的界面来设计报表设计文件,从而可以非常轻松和方便地设计报表。,12.2.1 设置iReport语言环境,前面介绍了如何手动地编写程序来编译报表设计文件,以及填充报表和现实报表。但是这种方式显然过于复杂以及费时,尤其是设计报表设计文件,如果完全靠手动的写代码那将是一个痛苦和繁重的任务。有了iReport,一切将变得很简单和轻松。双击iReport.exe打开iRe

6、port,将看到一个和Word等其他编辑软件相似的界面,如图12-5所示。界面上怎么又有繁体中文又有英文啊!这个是因为iReport的国际化没做好吧!不要紧,可以手动地修改语言环境。选择主菜单上的“Option”“选项”菜单。在弹出的“选项”对话框中找到“语言”选项,如图12-6所示。通过下拉列表选择“中文(中国)”选项,单击“存档”按钮保存设置。,12.2.2 使用iReport设计报表,下面来打开myFirst.jrxml报表设计文件。通过选择主菜单上的“档案”“开启旧档”选项,或者使用快捷键Ctrl+O打开文件选择对话框,选择打开myFirst.jrxml报表设计文件。这时在编辑区可以可

7、视化地看到该报表设计文件,如图12-8所示。,12.2.3 编译报表,下面来看如何使用iReport编译该报表设计文件。首先需要指定编译后文件的保存目录,和修改语言环境一样,打开“选项”对话框,如图12-11所示。单击“Compiler”选项卡,设置其中的“Default compiler directory”选项。单击“存档”按钮保存设置。通过选择主菜单中的“建立”“编译”选项即可对该设计文档进行编译。当输出信息控制台Output Console中出现正确编译信息,则表示编译成功,如图12-12所示。,12.2.4 预览报表,通过选择主菜单中的“建立”“执行报表”选项即可预览该报表。默认使用

8、JRViewer来预览报表,如图12-13所示。,12.3 导出PDF文件报表,iReport提供了多种预览模式,如PDF预览、HTML预览、CSV预览等。通过使用不同的预览模式,iReport将自动导出该文件格式的报表。,12.3.1 配置PDF文件阅读程序,通过选择主菜单中的“建立”菜单,如图12-14所示。可以看到存到多种预览。如果需要将报表导出为PDF文件格式,则需设置预览方式为PDF预览。设置完成后,执行报表,这时将会在配置的编译保存目录生成一个PDF格式的报表,如图12-15所示。,12.3.2 解决中文无法显示问题,这时发现一个问题,文档中只显示了几个叉叉啊!其他的文字怎么都不见

9、了。这是因为iText默认不支持中文字符,所以需要到iText的官方站点http:/itextpdf/下载其中的iTextAsian.jar。如果使用手动的方式导出文件则要将iReport加入到ClassPath下。如果使用iReport导出文件则只需将下载的iTextAsian.jar复制到iReport项目的lib目录下即可,如图12-18所示。同时还必须设置所有的中文字符的PDF字体(PDF Font Name)为STSong-Light,PDF编码为UCS2-H(Chinese Simplified),如图12-19所示。,12.4 带查询报表,前面设计的报表都是静态的报表,没有太多的

10、实际意义。实际的报表都需要传入一些动态的内容,例如显示数据库中查询的结果。,12.4.1 配置数据源,首先创建一张数据表,其中包括userID、username、password、sex以及age五个字段。其中userID为主键,并自动递增,如图12-21所示。,12.4.2 使用向导来创建带查询的报表,可以通过向导的方式来创建带查询的报表,这种方式非常简单,但是缺乏灵活性。选择主菜单上的“档案”“报表精灵”选项打开报表向导对话框。该报表向导一共分五步。,12.4.3 手动创建带查询的报表,前面介绍的是使用向导来创建报表虽然很方便,但是缺乏灵活性。下面来看如何手动创建带查询的报表。选择主菜单上

11、的“Date”“设置活动链接”选项,选择前面配置的数据源,单击“确定”按钮完成配置,如图12-33所示。选择主菜单上的“Date”“报表查询”选项,如图12-34所示,在该对话框中输入相应的查询语句,单击“OK”按钮完成配置。,12.5 带参数的报表,JasperReports允许在设计报表时使用一个或多个参数,这些参数在填充报表时再传入。通过iReport工具可以非常方便的添加参数。,12.5.1 添加参数,JasperReports允许在设计报表时使用一个或多个参数,这些参数在填充报表时再传入。使用iReport添加参数非常简单,首先找到“Document structure”视图窗口。在

12、该视图窗口中选择“add”|“Parameter”选项,打开参数添加对话框,如图12-39所示。在该对话框中输入变量名以及变量类型,并选中“Use as a Prompt“复选框,表示运行该报表时会出现一个提示框用来提示输入参数值,如图12-40所示。,12.5.2 布局报表,根据如上的方法添加多个参数,并将参数值显示在报表中,如图12-41所示。,12.5.3 执行报表,编译并执行该报表,使用PDF预览该报表。根据参数提示填写好相应的参数值,单击“OK“按钮完成参数传入,如图12-42所示。当所有的参数传入完成后,报表显示出设计的静态文本以及传入的参数值,如图12-43所示。,12.6 整合

13、Struts 2和JasperReports开发报表,Struts 2提供了JasperReports插件支持,借助于该插件,Struts 2可以非常方便和容易地使用JasperReports来生成报表。,12.6.1 安装JasperReports插件,JasperReports插件位于struts-2.0.11.1下的lib目录下。只需将该插件复制到Web应用下的WEB-INF目录下的lib目录下就可以了。但是发现这里该插件下的struts-plugin.xml配置同JFreeChart插件有类似问题,如下代码所示。,12.6.2 创建生成报表的Action,插件安装完成后,开始添加Act

14、ion用来生成报表,在该Action中可以添加一个get的方法,通过该方法返回一个集合。经过Action配置后,该集合中的数据将被填充到报表中。首先添加一个User类,该类是一个普通的JavaBean。类中包含三个属性,添加其构造函数以及各属性的setter和getter方法。,12.6.3 设计报表设计文件,使用iReport工具设计报表设计文件。为了能显示Action中的User,需要增加三个文本字段。并配置文本字段的name属性与User类中属性相对应。首先找到“Document structure”视图窗口。在该视图窗口中选择“add”“Field”选项,打开文本字段添加对话框。通过该

15、对话框配置文本字段的名称以及数据类型,如图12-44所示。添加完成文本字段后,可以将其直接拖曳到设计面板中,如图12-45所示。,12.6.4 配置Action,配置该Action非常简单,只需为该Action指定一个类型为jasper的Result。同时可以为该Result指定三个参数:location、format和dataSource,分别用来指定jasper格式文件所在路径,生成报表格式以及报表使用数据源,代码如下所示。,12.6.5 生成JasperReports报表,配置完该Action后,就可以生成报表了。打开浏览器,运行showReport.action。这时可以看到生成报表,如图12-46所示。,12.7 小结,本章首先介绍了JasperReports和iReport的下载和安装,以及如何手动的设计报表以及编译、填充、导出不同格式的报表。重点介绍了使用iReport设计报表,其中介绍了如何导出PDF文件格式的报表以及解决其中文无法显示问题。简单介绍了动态报表,如:带查询的报表、带参数的报表。最后介绍了如何在Struts 2中整合JasperReports来生成报表。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号