`

ireport+jasper 用javabean作数据源

阅读更多

      先弄清ireport和jasper之间的关系。
      ireport说到底是一个工具,而且是好工具,首先是免费(这非常重要),其次是免费正版,第三提高了象我这样常常写报表人的效率。

      如果您熟悉jasper规范,自己即可用其它工具手工编写xml文档,因为ireport最终一定要产生两个东西xml和jasper,不过我想,誰要喜欢手动编写整个xml,一定是有病,要么就是太闲了。

 


      这里介绍的是用javabean作数据源。先贴最重要的一段代码,

     List<Customer> data = new ArrayList<Customer>();     //Customer是bean
        data.add(c);
        //获取数据源
     JRDataSource dataSource = new JRBeanCollectionDataSource(data);
        ServletOutputStream ouputStream = null;
        try {
            //找到.jasper报表的路径
            String jasper = "/WEB-INF/classes/reportTest.jasper";
            String cd=ServletActionContext.getServletContext().getRealPath(jasper);
            // 生成JasperPrint
            JasperReport report = (JasperReport) JRLoader.loadObject(cd);
            //将参数置入报表,参数包括报表文件路径、报表接收的传入参数(以Map类提供)、报表数据源
        JasperPrint jasperPrint = JasperFillManager.fillReport(report, null, dataSource);
            System.out.println("填充报表......");
            //设定输出格式
        HttpServletResponse resp = ServletActionContext.getResponse();
            ouputStream = resp.getOutputStream();//  resp.getOutputStream();  
            resp.setContentType("application/pdf");
            resp.setCharacterEncoding("UTF-8");  
            resp.setHeader("Content-Disposition", "attachment; filename="+ URLEncoder.encode("PDF报表", "UTF-8") + ".pdf");  
                    
            // 使用JRPdfExproter导出器导出pdf  
            JRPdfExporter exporter = new JRPdfExporter();  
            // 设置JasperPrintList  
            exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);  
            exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, ouputStream);  
            exporter.exportReport();         
            ouputStream.close();  
        }catch(Exception e){
        	e.printStackTrace();
            System.out.println("输出报表失败!原因:"+e.getMessage());
        }

 

      数据源已经定义好,现在可以用ireport的可视化工具来做报表了。用法可以参考

      http://blog.csdn.net/lldwolf/archive/2008/06/19/2564554.aspx

 

分享到:
评论
2 楼 xuganggogo 2011-10-06  
ahwhxuesong 写道
你的jrxml文件是什么样的?如果用户需求是自己设计报表模版,那不就要自己写个设计器,那么不就要自己生成xml了?软件是根据需求,不是你有没有病的问题!

你先看清楚了,再回复。一个是通过工具生成xml,一个是手动编写xml,看清楚再说话
1 楼 ahwhxuesong 2011-09-28  
你的jrxml文件是什么样的?如果用户需求是自己设计报表模版,那不就要自己写个设计器,那么不就要自己生成xml了?软件是根据需求,不是你有没有病的问题!

相关推荐

    jasperreport+ireport创建javaBean多数据源报表

    下载包含程序源码,lib包,ireport创建模板操作文档,说明。程序可以在java myeclipse环境下直接运行。jasperreport版本6.3.1,ireport为5.6.0

    JavaWeb_Ireport_Jasper_JavaBean_Mysql

    亲测可用,下载即可在myeclipse运行,兼容JavaBean和sql作为数据源,内有报表教程可供参考,在web端进行报表的显示功能。

    iReport开发文档

    18 Jrxml源代码和jasper文件: 18 数据源和打印格式: 22 版本兼容性: 23 表达式: 24 一个简单的程序: 25 4 报表结构 26 Bands 26 Title 27 Page header 27 Column header 27 ...

    iReport 使用说明

    iReport 报表工具使用说明文档 1、使用JDBC连接数据源(包含创建 .jrxml 文件、编译生成.jasper文件) 2、JavaBean 配置 3、样式:隔行换色、table 边框

    ireport报表详细操作手册

    主要以自定义的javabean作为数据源来详细描述饼状图、柱状图、图标等组件的生成过程,将编译过的.jasper文件拷到项目中进行调用即可。 如果有误导消费者的,请放心投诉。通过项目摸索出来的东西分享给大家,希望可以...

    iReport4.5打印实例

    程序很灵活实用,为解决大家没有数据库的情况,本应用是针对于JavaBean做为数据源进行传递参数。 下面有我说一下怎么使用: 首先在print.jsp中可以修改jrprint的VALUE的值来确定程序调用的那个一.jasper文件,这里...

    ireport开发文档

    18 Jrxml源代码和jasper文件: 18 数据源和打印格式: 22 版本兼容性: 23 表达式: 24 一个简单的程序: 25 4 报表结构 26 Bands 26 Title 27 Page header 27 Column header 27 ...

    jasperreport报表开发小结.docx

    jasperreport报表开发小结,使用ireport设计报表模板,javabean作为数据源,整合springboot实现在线预览和导出各种格式的报表

    webwork下jasperreport的subreport使用套打

    webwork下jasperreport的subreport使用套打 javabean作为数据源。

    JasperReport使用手册 - JasperReport - 软件开发 - 深度开源.html

    :JDBC,CVS,Hibernate,JavaBean ,以及用户自定义的数据 支持所有有效的数据源。如 Arrary List 源,如 。4. 5. 6. scriptlet )支持。 集成脚本( 20 内置图表支持:超过 种的图表支持。并可扩展。 种语言

Global site tag (gtag.js) - Google Analytics