Struts2+JasperReports详细参数解析

本文详细介绍了如何在Struts2框架中利用JasperReports API生成不同格式的报表,包括CSV、HTML、PDF、RTF、XLS和XML等,并提供了零配置方式的实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

此篇文章翻译与Apache官方网站的JasperReports API。JasperReports在线API地址为:http://struts.apache.org/2.1.8.1/struts2-plugins/struts2-jasperreports-plugin/apidocs/org/apache/struts2/views/jasperreports/JasperReportsResult.html

org.apache.struts2.views.jasperreports 
Class JasperReportsResult

所有的应用接口

com.opensymphony.xwork2.Result, java.io.Serializable, org.apache.struts2.StrutsStatics,JasperReportConstants


公共类方法
 
  1. public class JasperReports extends org.apache.struts2.dispatcher.StrutsResultSupport
  2. implements JasperReportConstants {
  3. //你的代码
  4. }

要生成一个JasperReports报表,必须要为其指定一种特殊的格式;若没有指定,则默认生成PDF格式的报表。

JasperReports报表的result type参数如下:
  • location (默认):定义已编译的jasper report 文件的路径,如(foo.jasper),一般情况下是相对的URL路径,如 /report/my/test.jasper
  • dataSource(必须的参数):数据源,通常是一个List。
  • parse:默认值为true。如果设置成false,将不会解析location所携带的参数。
  • format:报表生成的格式。可用的报表格式有CSV、HTML、PDF、RTF、XLS和XML;若此参数值为空或省略了,生成的报表格式默认为PDF文档。
  • contentDisposition:内容形式(默认值为“inline”,其值为典型的文件名="document.pdf")。
  • documentName:文档名称。
  • delimiter:定界符,当生成的报表为CSV格式时,该参数才有效,默认的定界符为英文状态下的逗号“,”。
  • imageServletUrl:URL的名字,至于页面上下文之前,会返回一张报表图片。
  • reportParameters:报表参数。(struts 2.1.2+以上版本才支持)传递给报表的参数,通过map(key,value)方法实现。
  • exportParameters:报表导出参数。(struts 2.1.2+以上版本才支持)例如,生成一个PDF报表,可以为PDF报表设置一个String类型的密码,此时就会用的exportParameters参数。
  • connection:连接信息。(struts 2.1.7+以上版本才支持)可以不使用dataSource,取而代之的为JDBC连接信息,来作为报表的数据源。
使用实例(传统方法)

要生成报表,则在struts.xml文件中配置

 
  1. <!-- CSV格式报表 -->
  2. <result name="success" type="jasper">
  3. <param name="location">foo.jasper</param>
  4. <param name="dataSource">mySource</param>
  5. <param name="format">CSV</param>
  6. </result>
 
  1. <!-- PDF格式报表 -->
  2. <result name="success" type="jasper">
  3. <param name="location">foo.jasper</param>
  4. <param name="dataSource">mySource</param>
  5. </result>
零配置方式

此中方法无需在struts.xml文件中配置,直接继承struts2的ActionSupport接口,关于struts2的零配置,请在网上自行搜索资料,这里就不详细讲解,稍后有空我再写一遍关于struts2零配置的文章。

 
  1. package com.olympus.sapg.smtinnovation.action.jasper;
  2. import com.opensymphony.xwork2.ActionSupport;
  3. public class PullMaterielPickUpRecordJasper
  4. extends ActionSupport{
  5. @Action(value="MaterielPickUpRecordExport",
  6. results={@Result(
  7. name="success",
  8. location="/jasper/sapdocument/sapdoc_MaterielPickUpRecord.jasper",
  9. type="jasper",
  10. params={
  11. "dataSource","pullMaterielRecords",
  12. "format","XLS",
  13. "documentName","Pull_Materiel_Records"})})
  14. public String MaterielPickUpRecordExport(){
  15. return SUCCESS;
  16. }
  17. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值