對java報表工具選型,我們已經(jīng)從產(chǎn)地、技術(shù)、報表設(shè)計器和前端展現(xiàn)都角度做了介紹,接下來,從java報表工具最關(guān)鍵的集成應(yīng)用以及最具需求潛力的BI色彩角度來給您提供些簡要的選型建議。 &
后臺集成方案
Java報表軟件作為一款集成性極強的產(chǎn)品,企業(yè)級應(yīng)用中重點考慮的一方面就是集成性,各種java報表工具都擁有獨特的后臺集成方案。普遍后臺集成方案主要有 完全嵌入 、 獨立服務(wù)器 和 控件數(shù)據(jù)服務(wù) 三種。
完全嵌入指報表運算服務(wù)不單獨存在、而與用戶應(yīng)用程序結(jié)合成一體,主程序?qū)蟊矸?wù)的無縫調(diào)用,這樣可以達(dá)到最高的運行效率和最深入的控制,同時可以享受應(yīng)用系統(tǒng)的集群部署與數(shù)據(jù)連接共享能力以及不必專門處理權(quán)限門戶的事務(wù),是最經(jīng)濟高效的集成方案,但必須是報表工具與應(yīng)用程序基于同種技術(shù)實現(xiàn)才可以做到。
獨立服務(wù)器指報表運算在物理上獨立存在(有時甚至?xí)且慌_專門的機器),用戶應(yīng)用程序通過網(wǎng)絡(luò)協(xié)議調(diào)用報表服務(wù),不能共享應(yīng)用系統(tǒng)的集群和負(fù)載平衡能力,應(yīng)用程序需采用報表服務(wù)器的門戶權(quán)限機制。獨立服務(wù)器的優(yōu)點在于對應(yīng)用程序的技術(shù)體系沒有要求,采用不同技術(shù)的應(yīng)用可以同樣的方案集成起來,是靈活性最好的集成方案。
控件數(shù)據(jù)服務(wù)則專指以控件作為前端方案的產(chǎn)品在后臺的集成方案,運算接口都在前端的控件中,需要把復(fù)雜的程序?qū)懙巾撁娴?JavaScript 中;后臺則幾乎沒有運算,只是將數(shù)據(jù)取出送給前端,程序簡單可完全嵌入但并沒什么接口,這種方式無法發(fā)揮后臺服務(wù)器的強大計算能力,而且有關(guān)處理代碼將在前端暴露出來造成安全隱患,不適合大型應(yīng)用。
除了報表運算本身的集成外,還要考查有生成的統(tǒng)計圖(及 EXCEL/PDF )等二進制數(shù)據(jù)的引用方案,一般有 數(shù)據(jù)流服務(wù) 和 臨時文件 兩種。前者是將這類運算在后臺組織成一個服務(wù)(在 J2EE 中是 servlet ),將結(jié)果以數(shù)據(jù)流(如 JPG 圖像流)的形式返回給前端顯示或下載,后臺服務(wù)器上并不會真地產(chǎn)生一個文件;而后者則會將統(tǒng)計圖(或 EXCEL/PDF )物理地在后臺服務(wù)器中產(chǎn)生成一個臨時文件,瀏覽器上的圖片或下載鏈接指向該文件,采用最傳統(tǒng)的 http 機制完成圖片顯示和下載文件。
相比之下臨時文件方案有明顯的劣勢,必須操作系統(tǒng)放開對硬盤某處的寫權(quán)限(這在某些系統(tǒng)下可能導(dǎo)致是嚴(yán)重的安全問題),創(chuàng)建臨時文件會占用硬盤空間而且降低訪問速度,而且這些文件的命名(不得重名)及刪除都需要較復(fù)雜的管理(有些產(chǎn)品只會創(chuàng)建而不會自動刪除)。
純 JAVA 的產(chǎn)品在 J2EE 機制下理論上都可提供出完全嵌入的方案, Style Report 、博易智軟、和勤等產(chǎn)品以獨立服務(wù)器方式提供,潤乾報表和開源的 Jasper Report 提供完全嵌入的方案;而在非 J2EE 機制下,這些 JAVA 產(chǎn)品都只能以獨立服務(wù)器方式存在。除 Style Report 外,其它國外產(chǎn)品在任何環(huán)境下都僅提供獨立服務(wù)器方式。國內(nèi)以控件為展現(xiàn)方式的產(chǎn)品均只有控件數(shù)據(jù)服務(wù)方式,如數(shù)巨報表、如意報表、用友華表。
純 JAVA 產(chǎn)品(Style Report、潤乾、Jasper Report等)均可提供數(shù)據(jù)流服務(wù)來引用二進制數(shù)據(jù),而非 JAVA 的獨立服務(wù)器產(chǎn)品(Crystal Report、BO、Brio、Cognos)大多采用古老的臨時文件方案提供這項服務(wù)。
BI 色彩
Java報表軟件在某種程度上屬于BI展現(xiàn)的一部分,越來越多的企業(yè)級用戶已經(jīng)不滿足簡單的報表展現(xiàn),更多的需要數(shù)據(jù)分析數(shù)據(jù)挖掘等指導(dǎo)商業(yè)決策的商業(yè)智能(BI)功能。事實上,市場上的java報表工具有許多其實是 OLAP 前端工具(例如Acrplan),有的java報表工具則是單純的報表工具(例如潤乾報表)。純粹的報表工具只能依靠處理中國式復(fù)雜報表等特色贏得市場贏得小眾的特殊需要。近幾年來,大多數(shù)報表工具都增加了BI分析功能,在數(shù)據(jù)挖掘、數(shù)據(jù)鉆取、動態(tài)分析等方面不斷研究,但由于國內(nèi)市場上 OLAP 的應(yīng)用面尚比較狹小,除了傳統(tǒng)的BO、Cognos等商業(yè)智能工具在BI外,其他商家雖躍躍欲試,但市場內(nèi)的廝殺尚不激烈。
國外產(chǎn)品中 crystal report 和 Style Report 是主要為報表服務(wù)的,其它產(chǎn)品如 bo 、 brio 、 cognos 、 mstr 、 actuate,Style Intelligence(Style Report的升級版) 則都是 BI 類產(chǎn)品。 actuate 的 spreadsheet 可算作報表工具, cognos 最近推出的 reportnet 也加強了報表的能力。國內(nèi)產(chǎn)品中博易智軟與和勤都是 BI 類的產(chǎn)品,其它如潤乾報表、杰表、如意報表、數(shù)巨報表等都是純正的報表工具。
未完待續(xù)。
本博文的部分內(nèi)容來自于:http://www.cnblogs.com/freeze44/