JasperReport struts2集成 生成报表

JasperReport + struts2 => IReport

第一步:准备相关包放到工程的lib目录下:
groovy-all-1.7.5.jar
commons-beanutils-1.8.3.jar
commons-digester-1.7.jar
commons-logging-1.0.4.jar
iText-2.1.7.jar
iTextAsian.jar
iText-rtf-2.1.7.jar
jasperreports-4.0.2.jar
json-lib-2.3-jdk15.jar
struts2-core-2.1.8.1.jar
struts2-jasperreports-plugin-2.1.8.1.jar
struts2-json-plugin-2.1.8.1.jar
struts2-junit-plugin-2.1.8.1.jar
说明:这些包能够相兼容,当然你也可以使用其他一些相兼容的包

第二步:使用模板设计工具IReport制作模板(*.jrxml),编译成二进制文件(*.jasper)

第三步:新建ExportPDFAction
public class ExportPDFAction extends ActionSupport{
public String exportPDF()
{
try {
List list =new ArrayList();
// 此处省略
// ...

String reportSource = request.getRealPath("/jasper/pdf_report.jrxml");
File parent = new File(reportSource).getParentFile();

//将.jrxml模板文件编译成为.jasper文件,当然,其文件名可以指定,如果没指定,则与.jrxml文件名一样.只是后缀不同而已
https://www.360docs.net/doc/483874427.html,pileReportToFile(reportSource, new File(parent, "pdf_report.jasper").getAbsolutePath());

} catch (EamDataAccessException e) {
e.printStackTrace();
} catch (JRException e) {
e.printStackTrace();
}
return SUCCESS;
}
}

第四步:struts.xml中的配置如下:







/jasper/pdf_report.jasper

list
PDF






/jasper/pdf_report.jasper

list
XLS




location 是指我们刚才用iReport编译生成的jasper文件

dataSource 是指我们执行的数据库查询结果,JavaBean , List

format 是指需要输出的类型,默认是PDF,其他的输出类型有:XML、HTML、XLS、CSV、RTF ,注意这里一定要大写

除了这几个参数,还有下列参数:

delimiter 是指如果输出类型为CSV的话,指定分割符,默认为“,”

parse 是指是否解析location参数中的EL表达式,默认为 true

contentDisposition 指定disposition,默认为“inline”,如果设为“attachment”就是强制下载

documentName 输出的文件名

format 格式,默认为“PDF”,其他的有:CSV、HTML、RTF、XLS、XML

imageServletUrl 生成图形的路径

相关文档
最新文档