日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JasperReport学习笔记2-创建简单的报表例子

發布時間:2024/4/17 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JasperReport学习笔记2-创建简单的报表例子 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://www.iteye.com/topic/399750

一,創建簡單的jrxml文件

Xml代碼 ?
  • <?xml?version="1.0"?>??
  • <!DOCTYPE?jasperReport ??
  • PUBLIC?"-//JasperReports//DTD?Report?Design//EN" ??
  • "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">??
  • <jasperReport?name="FirstReport">??
  • ????<detail>??
  • ????????<band?height="20">??
  • ????????????<staticText>??
  • ????????????????<reportElement?x="20"?y="0"?width="200"?height="20"?/>??
  • ????????????????<text><![CDATA[If?you?don't?see?this,?it?didn't?work]]></text>??
  • ????????????</staticText>??
  • ????????</band>??
  • ????</detail>??
  • </jasperReport>??
  • <?xml version="1.0"?> <!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd"> <jasperReport name="FirstReport"><detail><band height="20"><staticText><reportElement x="20" y="0" width="200" height="20" /><text><![CDATA[If you don't see this, it didn't work]]></text></staticText></band></detail> </jasperReport>


    以上是一個簡單的JRXML文件,實際上就是一個標準的XML文件,<jasperReport>是根元素,<staticText>表示靜態的數據,<reportElement>定義了<staticText>的位置和寬度,<text>定義了實際的靜態數據。

    二,把JRXML文件解析成jasper文件,文件流或JasperReport對象(根據實際情況)

    1.建立一個WEB工程,再在WEBROOT目錄下建立一個目錄report
    2.使用JasperCompileManager里面的方法解析JRXML文件成jasper文件,文件流或JasperReport對象

    把JRXML文件parse,再complie成jasper文件

    Java代碼 ?
  • JasperCompileManager.compileReportToFile("WebRoot/report/jasperreports_demo.jrxml",?"WebRoot/report/langhua.jasper");??
  • JasperCompileManager.compileReportToFile("WebRoot/report/jasperreports_demo.jrxml", "WebRoot/report/langhua.jasper");



    或者生成JasperReport對象

    Java代碼 ?
  • public?static?JasperReport?compileReport("WebRoot/report/jasperreports_demo.jrxml")???
  • public static JasperReport compileReport("WebRoot/report/jasperreports_demo.jrxml")



    或者以流的方法生成

    Java代碼 ?
  • public?static?void?compileReportToStream(InputStream?inputStream,OutputStream?outputStream)??
  • public static void compileReportToStream(InputStream inputStream,OutputStream outputStream)



    當然JasperCompileManager也可以把Jasper文件變成JRXML的(包括JRXML流,都是靜太的方法)

    Java代碼 ?
  • writeReportToXmlStream ??
  • writeReportToXmlFile??
  • writeReportToXmlStream writeReportToXmlFile



    三,有了JasperReport對象,文件流或jasper文件之后,就可以用JasperFillManager生成JasperPrint對象,jrprint文件,jrprint文件流
    如下
    生成JasperPrint 對象

    Java代碼 ?
  • public?static?JasperPrint?fillReport(JasperReport?jasperReport,Map?parameters,?JRDataSource?dataSource)??
  • public static JasperPrint fillReport(JasperReport jasperReport,Map parameters, JRDataSource dataSource)



    生成其它

    Java代碼 ?
  • //生成文件 ??
  • public?static?void?fillReportToFile( ??
  • ????????String?sourceFileName,? ??
  • ????????String?destFileName,? ??
  • ????????Map?parameters, ??
  • ????????Connection?connection ??
  • ????????)? ??
  • //文件流 ??
  • public?static?void?fillReportToStream( ??
  • ????????JasperReport?jasperReport,? ??
  • ????????OutputStream?outputStream,? ??
  • ????????Map?parameters, ??
  • ????????Connection?connection ??
  • ????????)???
  • //生成文件 public static void fillReportToFile(String sourceFileName, String destFileName, Map parameters,Connection connection) //文件流 public static void fillReportToStream(JasperReport jasperReport, OutputStream outputStream, Map parameters,Connection connection)



    第四步,使用JasperExportManager導出或顯示

    Java代碼 ?
  • JasperExportManager.exportReportToHtmlFile(jasperPrint,?"c://1.html"); ??
  • JasperExportManager.exportReportToPdfFile(jasperPrint,?"c://1.pdf"); ??
  • //還有很多方法的??
  • JasperExportManager.exportReportToHtmlFile(jasperPrint, "c://1.html"); JasperExportManager.exportReportToPdfFile(jasperPrint, "c://1.pdf"); //還有很多方法的



    完整的例子

    Java代碼 ?
  • JasperReport?jasperReport; ??
  • ????JasperPrint?jasperPrint; ??
  • ????try{ ??
  • ??????jasperReport?=?JasperCompileManager.compileReport("WebRoot/report/jasperreports_demo.jrxml"); ??
  • ??????jasperPrint?=?JasperFillManager.fillReport(jasperReport,?new?HashMap(),new??JREmptyDataSource()); ??
  • ??????JasperExportManager.exportReportToPdfFile(jasperPrint,?"c://1.pdf"); ??
  • ??} ??
  • ????catch?(JRException?e){ ??
  • ??????e.printStackTrace(); ??
  • ????}?????????
  • JasperReport jasperReport;JasperPrint jasperPrint;try{jasperReport = JasperCompileManager.compileReport("WebRoot/report/jasperreports_demo.jrxml");jasperPrint = JasperFillManager.fillReport(jasperReport, new HashMap(),new JREmptyDataSource());JasperExportManager.exportReportToPdfFile(jasperPrint, "c://1.pdf");}catch (JRException e){e.printStackTrace();}


    ?

    =========http://blog.csdn.net/tianping168/article/details/3021387

    ?運行jasperreports中自帶的demo的方法

    ?

    ?
    相關介紹
    JasperReports是一個開源的java報表制作引擎
    http://jasperreports.sourceforge.net
    iReport是JasperReports的一個GUI工具,用來生成JasperReports的jrxml文件。
    http://ireport.sourceforge.net

    運行環境的配置
    1:JDK和ANT的安裝與環境變量的配置(這里就不說了,我想大家很容易找到資料)

    2:用ant編譯demo中的例子
    ?到cmd方式下,到某一個sample的目錄,比如到
    ?jasperreports/demo/samples/alterdesign目錄下
    ??? 步驟1: cmd中鍵入?? ant
    ??? ??會提示你編譯java成功,將生成 .class文件
    ??? ??
    ??? 步驟2: cmd中鍵入?? ant compile
    ??? ??將編譯jasper文件,生成 .jasper文件
    ??? ??
    ??? 步驟3: cmd中鍵入?? ant fill???
    ??? ??填充數據,生成.jrprint文件
    ??? ??
    ??? 步驟4: (部分需要此功能)再新起一個cmd,? 在/demo/hsqldb目錄下鍵入ant 或者 ant runServer
    ??? ??啟動數據庫,這是它會停在那了,所以要給他獨立一個cmd。ctrl+c會退出
    ??? ??
    ??? 步驟5: cmd中鍵入?ant viewDesign ?//查看源文件界面效果
    ??? ?????ant view?? ??//查看運行效果
    ??? ?????
    ??? 到此應該看到效果了吧,呵呵!

    ?

    與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的JasperReport学习笔记2-创建简单的报表例子的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。