jasperreport和ireports学习文档
来源:互联网 发布:数据挖掘导论 微盘 编辑:程序博客网 时间:2024/06/05 11:54
Jasper笔记
一.学会ireports
1. 目前ireport的版本是4.6.0版本在生成的ireport的xml文件中有一个特定的属性,uuid这个编号。而在eclipse中不能识别这个属性。当移植在eclipse中的时候删掉这个uuid的时候才能行。
2. 页面布局方面,如果要想让column这一列进行显示在上面,我们要在page页面属性float column foder进行选中,然后就可以进行设置各个类型(title,page header。。。)的高度的设置,进行格式上得调整。
3. 创建数据连接,在打开的页面上工具图标上有一个图标,进行点击创建数据(fields),但是创建的数据源可以有几种,一种是直接连接数据库,但是首先要穿件数据源;二种是javabean的这种数据,但是首先要创建一个javapath路径,但是这个路径必须在build路径下得class包中。
4. 讲解一下工具工具栏的一个菜单的用法,preview这个工具栏,这个工具栏就是各种显示界面的类型。
5. 创建一个新的jrxml文件,在打开页面的文件—new—reports这样建立一个新的jrxml文件。
6. 如果要在新的jrxml文件上创建图形分析图的话,打开窗口菜单栏的下的组件面板,直接选择上面的控件往你要进行数据显示的区域。
7. 各个区域的介绍:tite 是表示该报表的头部信息,但是这个信息只有第一页显示,其他页面不在显示。Page header 表示文章的作者信息或其其他说明的,也是第一页有效,detail这个就是数据进行循环显示的内容。表示这个数据有多少个对象就要显示几次。(一般进行最后分析的结果建议不要放在这个选择框中),column footer这个框表示只显示一列。
8. 给各种图像进行填充数据,在该图上单击右键(char set),进行填充数据。
(主要的具体操作还是要查看官方文档和其他学习文档)
二.学会在eclipse上安装插件插件的的路径:htt://jasperwave/update-site/
基本操作和irePORTS的操作差不多,要细细去研究。
三.学会看懂jrxml的文件
具体看是jrxml的头文件,对于每一组件都要进行识别
四.结合eclipse进行打印输出图形
方式一:(通过struts进行配置)
情况一:已经生成.jasper文件
<actionname=”” class=”” method=””>
<resultname=”success” type=”jasper”>
<param name=”location”>
/**/***.jasper//表示jasper的保存文件夹
</param>
<param name=”dataSource”>
***//表示一个list列表的集合
<param>
<param name=”format”>
PDF//表示格式(HTML,XML,RTF….)
</param>
</result>
</action>
情况二:只有jrxml文件
首先:在action中进行处理jrxml文件转换成jasper文件
Tage = userdao.t…..;
String reportSoure =ServletActionContext.getServletContext().getRealPath(“/**/**.jrxml”);
Fileparent = new File(reportSoure).getParentFile();
JasperCompileManager.compileReportToFile(reportSoure,newFile(parent,”**.jasper”).geAbsolutePath());
其次:就是进行进行上面情况一的步骤
方式二:(通过通用的一个格式转换类来进行转换)
在action中写上
tage = userdao.TService();
System.out.println("-----------=============--------------"
+ tage.size());
JRBeanCollectionDataSource dataSouce = new JRBeanCollectionDataSource(
tage);
System.out.println(LoginAction.class.getResource("/").toString()
.substring(6));
JasperReport jasperReport = (JasperReport) JasperCompileManager
.compileReport(LoginAction.class.getResource("/")
.toString().substring(6)
+ "Test.jrxml");
Map parameters = new HashMap();
JasperPrint jasperPrint = JasperFillManager.fillReport(
jasperReport, parameters, dataSouce);
ExportReport.exportToHTML1(jasperPrint);
另外创建一个处理类 :ExportReport.java
package com.shop.util;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.export.JRHtmlExporter;
importnet.sf.jasperreports.engine.export.JRHtmlExporterParameter;
import net.sf.jasperreports.engine.export.JRPdfExporter;
import net.sf.jasperreports.engine.export.JRPdfExporterParameter;
import net.sf.jasperreports.engine.export.JRRtfExporter;
import net.sf.jasperreports.engine.export.JRXlsExporter;
importnet.sf.jasperreports.engine.export.JRXlsExporterParameter;
import net.sf.jasperreports.engine.export.JRXmlExporter;
public class ExportReport {
/**
* 导出html
* @param jasperPrint
* @return
*/
public staticString exportToHTML(JasperPrint jasperPrint){
HttpServletRequestrequest = ServletActionContext.getRequest();
StringBuffersb = new StringBuffer();
try {
JRHtmlExporterexporter = new JRHtmlExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STRING_BUFFER,sb);
exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI,request.getContextPath()+"/WebContent/images?image=");
//报表边框图片设置IS_USING_IMAGES_TO_ALIGN,Boolean.FALSE,不使用图片
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN,Boolean.FALSE);
exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"UTF-8");
exporter.exportReport();
} catch(JRException e) {
// TODOAuto-generated catch block
e.printStackTrace();
}
returnsb.toString();
}
/**
* 导出html
* @param jasperPrint
* @return
*/
public staticvoid exportToPDF(JasperPrint jasperPrint){
try {
JRPdfExporterpdfexporter = new JRPdfExporter();
pdfexporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
//如果保存到硬盘用下面语句
pdfexporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,"D:/mypdf.pdf");
pdfexporter.setParameter(JRPdfExporterParameter.IS_ENCRYPTED,Boolean.FALSE);
pdfexporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"UTF-8");
pdfexporter.exportReport();
} catch (JRExceptione) {
// TODOAuto-generated catch block
e.printStackTrace();
}
}
/**
* 导出RTF
* @param jasperPrint
* @return
*/
public staticvoid exportToRTF(JasperPrint jasperPrint){
try {
JRRtfExporterrtfExporter=new JRRtfExporter();
rtfExporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
//设置导出文件名
rtfExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,"D:/myrtf.rtf");
rtfExporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"UTF-8");
rtfExporter.exportReport();
} catch(JRException e) {
// TODOAuto-generated catch block
e.printStackTrace();
}
}
/**
* 导出xml
* @param jasperPrint
* @return
*/
public staticvoid exportToXML(JasperPrint jasperPrint){
try {
JRXmlExporterxmlExporter=new JRXmlExporter();
xmlExporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
xmlExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,"D:/myxml.xml");
xmlExporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"UTF-8");
xmlExporter.exportReport();
} catch(JRException e) {
// TODOAuto-generated catch block
e.printStackTrace();
}
}
/**
* 导出Excel
* @param jasperPrint
* @return
*/
public staticvoid exportToExcel(JasperPrint jasperPrint){
try {
JRXlsExporterjrXlsExporter=new JRXlsExporter();
jrXlsExporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
//设置输出流
jrXlsExporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,"D:/myexcel.xls");
jrXlsExporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET,Boolean.FALSE);
jrXlsExporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"UTF-8");
jrXlsExporter.exportReport();
} catch(JRException e) {
// TODOAuto-generated catch block
e.printStackTrace();
}
}
/**
* 输出指定的html的文件
* @param jasperPrint
*/
public staticvoid exportToHTML1(JasperPrint jasperPrint){
HttpServletRequestrequest = ServletActionContext.getRequest();
Stringa=request.getRealPath("/");
System.out.println(a);
// StringBuffersb = new StringBuffer();
try {
JRHtmlExporterexporter = new JRHtmlExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,a+"show/my.html");
//exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI,"./images?image=");
//报表边框图片设置IS_USING_IMAGES_TO_ALIGN,Boolean.FALSE,不使用图片
exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN,Boolean.FALSE);
exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING,"UTF-8");
exporter.exportReport();
} catch(JRException e) {
// TODOAuto-generated catch block
e.printStackTrace();
}
}
}
写:小林
邮箱:goodleft88@gmail.com
请各位读者谅解,刚刚初学,有些比较含糊,具体内容需要参考官方API
- jasperreport和ireports学习文档
- Jasperreport文档
- JasperReport学习笔记8-JasperReport和Hibernate,Struts的整合
- JasperReport学习笔记8-JasperReport和Hibernate,Struts的整合
- jasperReport学习
- Tutorial iReports
- JasperReport学习笔记1-了解JasperReport
- JasperReport学习笔记1-了解JasperReport
- JasperReport 学习必备手册
- JasperReport 学习之路
- JasperReport 学习之路
- JasperReport 学习之路
- JasperReport 学习之路
- jasperreport中的demo学习
- JasperReport学习(转)
- JasperReport 学习必备手册
- jasperreport中的demo学习
- JasperReport 学习必备手册
- java多线程详解
- 2012.7.31总结
- 好几没来了每天签到一次
- Irrlicht引擎源码剖析——第八天
- Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)
- jasperreport和ireports学习文档
- CEvent类在线程同步中的作用
- mysql 设置密码的三种方法
- flash builder profile can't run
- codeforces 183A Headquarters
- /dev/null - 黑洞,/dev/zero
- Linux环境下VNC配置
- Lucene3.6 Example和一些Tips
- oracle表空间---undo表空间切换