seasun |
|
|||
在不斷模仿、思考、總結中一步一步進步! |
公告
日歷
導航常用鏈接隨筆分類
good blog author積分與排名
最新評論
閱讀排行榜
|
JasperReports 是什么
JasperReports是一個面向開發人員設計的開源Java類庫, 通過它可以為Java應用程序增加報表功能。由于 JasperReports 不是獨立的工具,所以不能對它進行獨立安裝。而是要通過應用程序的 CLASSPATH 來包含其類庫,從而把它嵌入到 Java應用程序中。JasperReports 是一個 Java類庫,也就是說它不是為最終用戶準備的。它的目標用戶是那些需要為應用程序添加報表功能的Java 開發人員。 JasperReports采用 Lesser GNU Public Library (LGPL)許可協議,所以開放源代碼的或不開放源代碼的應用程序都可以使用它。通過鏈接來使用JasperReports 類庫的應用程序不需要開放源代碼,而需要對現有JasperReports 源代碼進行修改的,那么所修改的內容必須也遵循 LGPL 進行發布。更詳細的說明可參考 http://www.gnu.org/copyleft/lesser.html。盡管 JasperReports 主要用于通過 Servlet API 來為基于 Web 的應用程序增加報表功能,但它并不是完全依賴于 Servlet API或任何 Java EE類庫。因此,它并不僅限于 Web 應用程序。用 JasperReports 來建立獨立的桌面程序或命令行程序來生成報表的開發從未停止過。可是,話說又回來,JasperReports除了是一個 Java類庫之外,什么都不是。它做的事情只是通過提供 API來為各種Java應用程序增加生成報表的功能。 JasperReports需要 Java Development Kit (JDK) 1.4或更新的版本來進行編譯,以便和 JasperReports 的 Java 類庫一同工作。同時還需要 Java Runtime Environment (JRE) 1.3或更新的版本來運行這些應用程序。早期版本的 JasperReports 需要 JDK 來運行 JasperReports 應用程序 (嚴格地講,JasperReports 需要 tools.jar 被設置在 CLASSPATH 環境變量中,JDK包含了 tools.jar,而 JRE 中沒有)。然而,從 0.6.4 版以后,JasperReports把 Eclipse Java Development Tools (JDT)編譯器捆綁在一起,因此不再需 要 JDK 來運行部署后的應用程序。本書的例子是用 JDK1.6 開發的,但它們在JasperReports支持的任何其它 JDK 或 JRE上也應該能夠順利地編譯和運行。 JasperReports 的特點 JasperReports 除了以文本數據方式生成報表外,還可以生成包含圖片、圖表和圖形的專業報表。JasperReports的主要特點包括: • 靈活的報表排版 • 多樣的數據表現方式 • 多樣的數據提供方式 • 支持從多種數據源接收數據 • 能夠生成水印 • 能夠生成子報表 此外,它還可以用許多種格式來輸出報表。下面的各小節將對這些特點做簡要介紹。 類庫依賴 JasperReports借用了其它的開源Java類庫來實現其部分功能,其中包括: iText: 一個用于生成和處理 PDF的類庫。另外,它還可以生成和處理 RTF、XML和 HTML文檔。JasperReports用它來導出 PDF和 RTF 格式的報表。要獲得有關 iText 的詳細介紹,可以訪問 http://www.lowagie.com/iText/。 JFreeChart: 一個 Java類庫,可用于生成各種圖表,包括:餅圖、條形圖、線形圖、區域圖、等等。JasperReports通過 JFreeChart 來實現其圖表功能。有關 JFreeChart 的詳細介紹可以查閱http://www.jfree.org/jfreechart/。 Apache POI: 一個Java類庫, 用于創建和處理各種建立在Microsoft的OLE2混合文檔格式基礎上的Microsoft Office格式的文檔。 JasperReports通過POI來導出XLS 格式的報表,更多的 Jakarta POI有關介紹可查閱http://poi.apache.org/。 JAXP: 用于解析和轉換XML文檔的 Java API,JasperReports用它來解析XML文件。JAXP 包含在 Java SE 5.0中。如果使用更早版本的Java SE,也可以要獨立地下載它。有關 JAXP的詳細介紹可以查閱https://jaxp.dev.java.net/。 Apache Commons: 一套 Java類庫,提供了大量的可重用組件。JasperReports使用了其中的 Commons Digester、BeanUtils、Logging組件來輔助JAXP 解析XML。關于 Apache Commons的詳細介紹可查閱http://commons.apache.org/。 典型的開發流程 下面的圖形給出了用 JasperReports創建報表的典型開發流程: ![]() 用 JasperReports進行開發時,第一步要創建報表模板,它是一個 XML文件。它可以通過手工編碼來完成,也可以用圖形化的報表設計軟件完成。雖然JasperReports的報表模板是 XML文件,但其文件名卻用.jrxml 來作為擴展名。JasperReports XML模板通常就是指 JRXML文件,本書中也使用這一術語。 |
![]() |
|
Copyright © shiwf | Powered by: 博客園 模板提供:滬江博客 |