`
pengchua
  • 浏览: 153188 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

IReport&Jasperreport使用实例代码

阅读更多

一..首先采用iReport作报表,生成相应的XXX..jrxml文件,具体操作可参考http://mooncome1983.blogchina.com/inc/iReport%23right.htm

二.采用Jasperreport在java中生成报表实例代码:

1.不连接数据库时:
public class Test ...{

    
/** *//**
     * 
@param args
     
*/

    
public static void main(String[] args) ...{
        
// TODO Auto-generated method stub
        ...{
            JasperReport jasperReport;
            JasperPrint jasperPrint;
            
try ...{
                String temp
=System.getProperty("user.dir");
    
//compile xxx.jrxml
jasperReport = JasperCompileManager
                .compileReport(temp
+"/WebRoot/WEB-INF/classes/reports/jasperreports_demo.jrxml");
                
//路径的问题
                jasperPrint = JasperFillManager.fillReport(jasperReport,
                        
new HashMap(), new JREmptyDataSource());
                
//export pdf
                JasperExportManager.exportReportToPdfFile(jasperPrint,
                        temp
+"/WebRoot/WEB-INF/classes/reports/simple_report.pdf");
                
//export html
                JasperExportManager.exportReportToHtmlFile(jasperPrint,
                        temp
+"/WebRoot/WEB-INF/classes/reports/simple_report.html");
            
            }
 catch (JRException e) ...{
                e.printStackTrace();
            }

        }


    }

}

2:连接数据库:
public class Test ...{

    
/** *//**
     * 
@param args
     
*/

    
public static void main(String[] args) ...{
        
// TODO Auto-generated method stub
        ...{
            JasperReport jasperReport;
            JasperPrint jasperPrint;
            
try ...{
                String temp
=System.getProperty("user.dir");
                
//把.jrxml文件编译成.jasper文件,尽管也可直接访问的已生成的.jasper文件,不过不推荐这样做,毕竟是iReport使
                
//用的JasperReport版本可能与我们在Java工程中包含的版本不一样,这样,直接使用iReport生成的.jasper文件可能会
                
//在下一步的runReport中出问题。
                jasperReport = JasperCompileManager
                        .compileReport(temp
+"/WebRoot/WEB-INF/classes/reports/test1.jrxml");
                
//路径的问题
                
//fillReport( , , ) 最后一个参数是取得数据连接
                JasperPrint jasperPrint1 = JasperFillManager.fillReport(jasperReport,new HashMap(),getMysqlConn());

                
//export pdf
                JasperExportManager.exportReportToPdfFile(jasperPrint1,
                        temp
+"/WebRoot/WEB-INF/classes/reports/test1.pdf");
                
//export html
                JasperExportManager.exportReportToHtmlFile(jasperPrint1,
                        temp
+"/WebRoot/WEB-INF/classes/reports/test1.html");
            
            }
 catch (JRException e) ...{
                e.printStackTrace();
            }

        }


    }

    
    
public static Connection getMysqlConn()...{
        String url
="jdbc:mysql://localhost:3306/catalog"
        Connection dcon 
= null;


        
try ...{
            Class.forName(
"com.mysql.jdbc.Driver");
             dcon
=DriverManager.getConnection(url,"root","root"); 
        }
 catch (Exception e) ...{
            
// TODO Auto-generated catch block
            
            e.printStackTrace();
        }
 
        
        
return dcon;

    }

    
}


 

3.采用servlet直接生成pdf等文件

public class TestServlet extends HttpServlet ...{
    
      
public static final String XML_FILE_PATH =System.getProperty("user.dir")+"/WebRoot/WEB-INF/classes/reports/";
      
      
protected void doGet(HttpServletRequest req, HttpServletResponse res)
      
throws ServletException, IOException ...{

//    创建response输出流,设置responxe回应的头部
      OutputStream out = res.getOutputStream();
      res.setContentType(
"application/pdf");
      res.setHeader(
"Content-Disposition","attachment; filename=test1.pdf");  //filename为生成PDF的文件名
      String fileName = "test1.jrxml";
  Map map 
= null;

//    调用createPdf()获得PDF输出的字节流并打印出来。  
      byte[] bytes = createPdf(fileName,  map);
      res.setContentLength(bytes.length); 
      out.write(bytes, 
0, bytes.length);
      out.flush();
    }


    
protected void doPost(HttpServletRequest req, HttpServletResponse res)
    
throws ServletException, IOException ...{
      doGet(req, res);
    }
 

//    封装创建PDF输出的compile和run方法,返回最终生成的字节流

    
private byte[] createPdf(String fileName,  Map map) ...{
      String path 
= XML_FILE_PATH + fileName;//.jrxml文件的全路径
      String jrFile = XML_FILE_PATH + "test1.jasper";//编译结果.jasper文件的全路径
      byte[] bytes = null;
      
try...{
          JasperCompileManager.compileReportToFile(path, jrFile);
          
//将.jrxml文件编译成.jasper文件
      }
catch (JRException e)...{   
          e.printStackTrace();
      }

      
try...{
          bytes 
=JasperRunManager.runReportToPdf(jrFile, map, getMysqlConn());
          
//生成相应的的字节流
      }
catch (JRException e)...{
         e.printStackTrace();
      }

      
return bytes;
    }
 
    
public  Connection getMysqlConn()...{
        String url
="jdbc:mysql://localhost:3306/catalog"
        Connec
分享到:
评论

相关推荐

    iReport 和 Jasperreport整合开发web报表向导2.doc

    iReport 是 JasperReport 的一个可视化设计工具,用于创建 JasperReport 报表模板。它提供了直观的图形用户界面,帮助用户设计复杂的报表布局,包括静态文本、图表、图像、表格等元素。 2. **iReport 主界面及操作...

    ireport+JasperReport经典报表开发实例

    看看代码你就知道报表开发有多简单。由于jar包太多,所以没有附带,你可以安装ireport3.0.0后,ireport安装目录下的lib文件下的jar包就是本实例的jar包,但是struts的包需要你自己加入。

    ireport+jasperreport柱状图例子

    详细介绍了如何利用ireport+jasperreport柱状图例子,并附有代码,参照实例,手把手教你用该解决方案作柱状图。

    IReport与JasperReport开发报表经验总结

    ### IReport与JasperReport开发报表经验总结 在IT领域,报表工具的选择和使用对于数据分析、数据呈现至关重要。本文将基于“**IReport与JasperReport开发报表经验总结**”这一主题,对文档中提到的一些关键问题及其...

    iReport&jxl

    标题 "iReport&jxl" 暗示了我们讨论的主题是关于报表设计工具 iReport 和 Java Excel API(jxl)的结合使用。iReport 是一个开源的报表设计工具,常用于 JasperReports 的报表设计,而 jxl 是一个用于读写 Microsoft...

    ireport+jasperreports 项目实例

    ireport jasperreports 项目实例,导入myeclipse下,运行在tomcat上即可 导出pdf,doc,xls,html格式的文档,自己整理可用的,不忽悠你,算是比较完整的 不仅在servlet中导出,而且整合了struts2导出,非常实用,当然...

    JasperReport + IReport 开发文档

    7. **jasperreport+ireport开发java报表入门级教程.pdf**:专门针对Java开发者的入门教程,详细解释如何使用JasperReport和IReport构建报表。 8. **jasperReport.pdf**:可能是一个JasperReport的官方文档或者第三方...

    jasperreport ireport开发java报表入门级教程(完整版).rar

    IReport是JasperReport的官方报告设计器,提供了一个直观的GUI界面,让用户无需编写代码就能设计报表模板。用户可以通过拖拽控件、设置样式、添加数据源等方式创建报表。IReport支持XML语法的JRXML文件,这种文件...

    JasperReport、ireport固定表头隐藏列

    示例代码中可能包含了如何在Java应用中操作JasperReport实例,实现这些功能的具体实现。它可能涉及到`JasperDesign`对象的动态修改,使用`JRField`和`JRSection`等API来操作报表结构,以及`JasperFillManager`和`...

    JasperReport+iReport测试工程源码

    JasperReport和iReport是Java领域中用于生成报表的重要工具,尤其在企业级应用中广泛使用。本测试工程源码提供了使用这两者进行固定格式文件打印的实例,旨在帮助开发者理解并掌握它们的核心功能和使用方法。 ...

    iReport生成pdf打印的实例代码

    iReport生成pdf打印的实例代码 iReport是一款功能强大且广泛应用的报表工具,它允许开发者快速...本实例代码展示了如何使用iReport生成PDF打印的实例代码,涵盖了iReport的基本概念和使用方法,希望对大家有所帮助。

    ireport 子报表,行合并实例

    本篇将深入探讨如何利用IReport来实现子报表以及行合并的实例。 首先,IReport是一款基于GUI的报表设计工具,它允许用户通过拖拽方式设计报表模板,然后将其编译成JasperReport可以理解的JRXML文件。JasperReport则...

    JasperReport实例导入可用

    在这个实例中,我们将探讨如何导入并使用一个可用的 JasperReport 示例项目,以理解其工作原理和核心功能。 1. **JasperReport 概述** JasperReport 提供了丰富的模板设计功能,支持多种数据源,如 JDBC、CSV、XML...

    iReport 报表、子报表、主从报表、合计、实例解析

    iReport 报表、子报表、主从报表、合计、实例解析1. 开发使用步骤(iReport4.1)... 2 4.1. JasperReport 和iReport的介绍... 2 4.1.1. JasperReport 简介... 3 4.1.2. iReport 简介... 3 4.1.2.1. iReport几个重要...

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

    4. **Java代码集成**: 在Java项目中,加载.jasper文件,创建JavaBean实例,使用JasperFillManager填充数据到报表。 5. **展示或导出报表**: 填充完成后,使用JasperPrint对象展示报表或通过JasperExportManager导出...

    java+ireport报表开发实例

    JasperReport与iReport结合使用,可以让非技术人员通过图形化界面设计报表,然后由Java应用程序处理生成和展示。 **2. iReport的安装与使用** 下载并安装iReport后,可以通过其内置的WYSIWYG编辑器创建报表模板。...

    Ireport教程(共三个)

    最后,《jasperreport+ireport开发java报表入门级教程》将深入到JasperReport的使用,JasperReport是一个强大的报表引擎,能够处理复杂的报表逻辑。这份教程可能会介绍如何在Java应用程序中嵌入JasperReport,如何...

    ireport导出pdf和word文档实例

    本文将详细介绍如何使用`iReport`来导出PDF和Word文档。 首先,`iReport`是JasperReports库的一部分,它提供了一个图形用户界面,使得非程序员也能设计和编辑报表。它的核心功能包括:设计报表模板、支持多种数据源...

    JavaWeb_ServLet+jasperReport 5.6 实例

    本资源为本人博文的源码,关于jasperreport5.6+javaServletWeb开发的项目,项目比较简单,关于report的数据传递方法都进行代码框架搭建,读者可以根据自己的需要进行下载修改,有问题欢迎随时交流。

    jasperReport测试例子

    这个测试例子是关于如何使用jasperReport进行报表设计和开发的实践代码和学习资源集合。通过这个测试项目,我们可以深入理解jasperReport的工作原理,以及如何在Java应用程序、JSP或Web环境中集成报表功能。 ...

Global site tag (gtag.js) - Google Analytics