Ireport+JasperReport制作报表二-JasperReport编译模板


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();
}

posted on 2011-05-01 15:28  archie2010  阅读(2658)  评论(0编辑  收藏  举报