從部署、展示、設(shè)計(jì)等方面,全面比較Java報(bào)表工具,如FineReport,潤(rùn)乾,快逸,Style Report,Jasper等,以及聲稱(chēng)支持Java的Crystal,數(shù)巨等。
Java報(bào)表工具,首先可以分成兩大類(lèi):純Java報(bào)表工具,和"支持"Java的報(bào)表工具.
純Java報(bào)表工具
純Java的報(bào)表工具,主要的有:
開(kāi)源的產(chǎn)品,如JasperReport(
http://www.jasperreport.com),以及準(zhǔn)開(kāi)源的產(chǎn)品(只賣(mài)設(shè)計(jì)器,服務(wù)器免費(fèi)的)。這些產(chǎn)品的功能上要弱很多。開(kāi)源的更沒(méi)有支持,雖然有很多討論區(qū),但這和可靠的廠商的商業(yè)支持是沒(méi)法比的。準(zhǔn)開(kāi)源雖然支持稍好一點(diǎn),但有限的收入對(duì)于其長(zhǎng)期支撐、產(chǎn)品提升都是不利的,對(duì)用戶(hù)則是一個(gè)長(zhǎng)期的風(fēng)險(xiǎn)。
FineReport (
http://www.finereport.com)功能完善的web報(bào)表產(chǎn)品,支持中國(guó)式報(bào)表設(shè)計(jì):多源分片,擴(kuò)展后數(shù)據(jù)的格間運(yùn)算,行列對(duì)稱(chēng)等等。并且對(duì)于報(bào)表設(shè)計(jì)人員來(lái)說(shuō),F(xiàn)ineReport有一個(gè)優(yōu)勢(shì)就是可以?xún)H通過(guò)鼠標(biāo)操作就設(shè)計(jì)出復(fù)雜的報(bào)表,這增強(qiáng)了工具的易學(xué)和易用性。沒(méi)有加密狗。
潤(rùn)乾 (
http://www.runqian.com)潤(rùn)錢(qián)是一個(gè)功能非常強(qiáng)大的Web報(bào)表產(chǎn)品,支持中國(guó)式報(bào)表。但是由于其報(bào)表設(shè)計(jì)方式完全依賴(lài)手寫(xiě)表達(dá)式,對(duì)于沒(méi)有技術(shù)基礎(chǔ)的用戶(hù)來(lái)說(shuō),學(xué)習(xí)難度比較大。其最初是定位于高端用戶(hù),06年在普及版的基礎(chǔ)上推出了快逸報(bào)表,去掉了最核心的多數(shù)據(jù)源線性報(bào)表功能,保留的功能只相當(dāng)開(kāi)源的jasperreport的所具備的功能,主打低端路線。雖然快意同樣也是一個(gè)純JAVA產(chǎn)品,但是由于其限制非線性報(bào)表功能,不能設(shè)計(jì)中國(guó)式復(fù)雜報(bào)表,所以在面對(duì)復(fù)雜報(bào)表的時(shí)候,就無(wú)能為力了,個(gè)人覺(jué)得市場(chǎng)宣傳的噱頭遠(yuǎn)遠(yuǎn)大于實(shí)際功能的作用。二者都有加密狗。
"支持"Java的報(bào)表工具:
我 們所說(shuō)的"支持"Java的報(bào)表工具.其實(shí)就是非Java的報(bào)表工具,但是可以在Java程序中調(diào)用.這樣的產(chǎn)品很多,總的講一大類(lèi)是采用獨(dú)立報(bào)表服務(wù)器 的,如Bo/Crystal Report(
http://www.businessobjects.com),Brio(
http://www.brio.com),Cognos(
http://www.cognos.com)等;另一大類(lèi)是在前端有控件的,如數(shù)巨報(bào)表(
http://www.maxrpt.com)等。
獨(dú)立報(bào)表服務(wù)器的問(wèn)題在于:
獨(dú)立的報(bào)表服務(wù)器,直接限制了報(bào)表的性能瓶頸
無(wú)法共享web服務(wù)器的集群能力
無(wú)法共享web服務(wù)器的連接池管理能力
無(wú)法統(tǒng)一部署,實(shí)施人員既要部署自己的web應(yīng)用,還需要部署報(bào)表服務(wù)器
獨(dú)立報(bào)表服務(wù)器往往有一套自己的用戶(hù)角色管理機(jī)制,與用戶(hù)的應(yīng)用銜接起來(lái)問(wèn)題多多
前端控件方式的問(wèn)題在于:
用戶(hù)部署起來(lái)非常麻煩,每臺(tái)機(jī)器都要安裝控件。(為解決這個(gè)問(wèn)題,有些廠商把原來(lái)控件所做的報(bào)表計(jì)算工作移到服務(wù)器上做,但這只能在Windows下運(yùn)行,因?yàn)樗⒉皇羌僇ava的)
控件會(huì)對(duì)大報(bào)表產(chǎn)生性能問(wèn)題,因?yàn)槠鋱?bào)表生成與計(jì)算工作是在控件中實(shí)現(xiàn)的。
應(yīng)用系統(tǒng)無(wú)法靈活地通過(guò)API對(duì)報(bào)表進(jìn)行控制。
產(chǎn)品升級(jí) -客戶(hù)端都要重新下載新的控件,增加工作量,比較麻煩。
這 一比較,并不是說(shuō)其他方式就不可取,但顯然在Java環(huán)境下的報(bào)表應(yīng)用,純Java的報(bào)表產(chǎn)品有先天的優(yōu)勢(shì)。
了解Java報(bào)表工具就從這里開(kāi)始
posted on 2007-06-21 17:20
season 閱讀(1394)
評(píng)論(2) 編輯 收藏 所屬分類(lèi):
Java報(bào)表—功能比較