1.
JasperFillManager:填充管理,主要的方法如下:
fillReport:填充报表,多态函数,返回值为JasperReport,参数为报表和报表参数Map,
参数Map里包括Parameters、DataSource等,如果是从数据库取数据还要有connection参数;
fillReportToFile:填充报表生成文件,多态函数,无返回值,参数为源文件、目标文件和报表参数Map。
2.
JasperExportManager:导出管理,主要方法如下:
exportReportToPdfFile:导出PDF文件,多态函数,提供几种方式:从源文件导出到目标文件、从JasperPrint导出到目标文件、从源文件流导出目标文件,如果枚举的话有9种方式,无返回值。
exportReportToHtmlFile:导出HTML文件,同上
exportReportToXmlFile:导出XML文件,同上
3.
JasperPrintManager:打印管理,主要方法如下:
printReportToPdfFile:把报表导出成PDF文件,然后自己打印;
printReport:直接打印报表,多态函数,提供文件名、文件流或JasperReport直接启动打印,返回值true/false;
printPages:同printReport,但参数增加了页数选择。
4.
JasperCompileManager:编译管理,把.jrxml文件编译成.jasper文件,主要用到的方法只有一
个,compileReportToFile:多态函数,参数.jrxml文件名或者JasperDesign、InputStream和输
出.jasper文件名
5. JRRewindableDataSource:定义一个可以往回查看记录的方式的接口,主要方法是moveFirst移动到第一行,是JavaBean和TableModel等数据源的祖先。
6.
JRResultSetDataSource:数据源结果集,实现JRDataSource的类,另外它还增加了二个属性resultSet结果集和 columnIndexMap列索引Map;主要的方法有getColumnIndex:获取列索引,参数名称filedName,返回索引值
7.
JRAbstractExporter:导出的抽象类,这里将引出导出的其它格式支持包括常用的Excel、CSV等,详细实现请看:net.sf.jasperreports.engine.export命名空间。
8. JasperReport:定义Jasper
Report对象,主要方法有getCompileData获取编译信息。
9. JasperPrint:定义Jasper
Print对象,主要方法有getPages获取打印页数。
10. JasperManager:通用管理器,主要方法如下:
printReport:打印报表,多态方法,同JasperPrintManager
fillReport:填充报表,多态方法,同JasperFillManager
loadReport:装载报表,多态方法,参数为报表名称或InputStream,返回值为JasperReport,loadPrint同此方法
runReportToPdf:运行报表,多态方法,参数为jasperReport、parameters、jrDataSource,返回报表字节流byte[]。
11.
JRHibernateAbstractDataSource:Hibernate抽象数据源类,定义系统支持Hibernate数据源格式。
12. JRCsvDataSource:CSV数据源
13. JRAbstractTextDataSource:抽象文本数据源
14. JRXmlDataSource:Xml数据源。继承自JRAbstractTextDataSource
15. JRAbstractBeanDataSource:JavaBean抽象数据源
16. JRBeanCollectionDataSource:Bean集合数据源,继承自JRAbstractBeanDataSource
17. JRBeanArrayDataSource:Bean数组数据源,继承自JRAbstractBeanDataSource
18.JRTableModelDataSource:表模型数据源,需要定义表的列和报表的field对应关系。
PDF报表导入到本地
try {
JDBCConnection db = new JDBCConnection();
//报表jasper文件路径
String jasperSource="H:/jasperreport/lineUser.jasper";
Map<String, Object> param=new HashMap<String, Object>();
param.put("id", 1);// 传递参数(参数类型);
//param.put("sql", "sql");*/ //亦可把整条sql语句作为参数
//标准流程:生成中间的print对象,然后再导出成其他格式。
//装载对象
JasperReport report = (JasperReport) JRLoader
.loadObjectFromLocation(jasperSource);
//填充数据
JasperPrint print = JasperFillManager.fillReport(report,param, db
.getConnection());
//导出成pdf(需要包含iTextAsian.jar包);
//直接将装填过程生成的文档导出到pdf格式
JasperExportManager.exportReportToPdfFile(print, "H:/jasperreport/line.pdf");
} catch (JRException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}