申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
AMTeam.org
ColdFusion
MX增加對(duì)J2EE、XML和Web服務(wù)的兼容
MX是最新發(fā)布的ColdFusion應(yīng)用服務(wù)器。同時(shí)該產(chǎn)品也就是最新版本的DreamOA、
Fireworks和Flash。這也是Macromedia公司頭一回把其生產(chǎn)的所有主流產(chǎn)品捆綁為一個(gè)功能強(qiáng)大的套件。MX套件中的每一款產(chǎn)品都因?yàn)镸X命名的緣故而進(jìn)行了重大修改。本文就專門(mén)對(duì)ColdFusion深入探討。
推陳出新
MX下的ColdFusion到底有了怎樣的改變呢?
MX引擎建立在一個(gè)與以往完全不同的平臺(tái)之上。以前的引擎是用C語(yǔ)言編寫(xiě)的,但是現(xiàn)在的這款新版本引擎則是用Java語(yǔ)言編寫(xiě)的,從而把ColdFusion完全引入了J2EE的勢(shì)力范圍;此外,新產(chǎn)品中增加了若干新標(biāo)簽,有的取代了某些舊標(biāo)簽,有的則應(yīng)用戶的長(zhǎng)期要求而增加了某些新功能;種種改進(jìn)令ColdFusion與今天的最新技術(shù)成就保持了同步。
ColdFusion一直就是一種對(duì)操作系統(tǒng)友好的平臺(tái),它支持Windows (9x, NT, 2000和 XP)、
Linux、HP UX、Solaris和Mac等操作系統(tǒng)。隨著新產(chǎn)品加入對(duì)J2EE的支持,MX
的伙伴中又增加了IBM的WebSphere和BEA的WebLogic。實(shí)際上,
ColdFusion軟件光盤(pán)目前就隨帶了WebSphere,這一跡象充分表明了Macromedia和IBM的合作關(guān)系,同時(shí)強(qiáng)調(diào)了Java應(yīng)用服務(wù)器目前對(duì)ColdFusion的支持。MX
for J2EE應(yīng)用服務(wù)器特別版最終實(shí)現(xiàn)了Java同ColdFusion開(kāi)發(fā)團(tuán)隊(duì)更緊密地融合。
圖象和圖表處理
從5.0版本開(kāi)始Coldfusion其實(shí)已經(jīng)擁有了正式的圖表處理能力,其實(shí)在更早的版本中這些功能就已經(jīng)由沒(méi)有文檔化的CFX標(biāo)簽所實(shí)現(xiàn)了。如果你認(rèn)為<CFGRAPH>標(biāo)簽并沒(méi)有太大的益處,那么<CFCHART>標(biāo)簽則會(huì)令你打消疑慮。更多類型的圖表、可配置的數(shù)據(jù)處理、多系列數(shù)據(jù)處理能力、背景批處理創(chuàng)建圖表以及同F(xiàn)lash的集成等等最新特性無(wú)疑令<CFCHART>成為一種功能相當(dāng)強(qiáng)勁的工具。
有了上面的新工具你完全生成多種多樣的各類圖表:金子塔圖、錐形圖、餅圖、條形圖、線圖、區(qū)域、曲線柱形圖等等。在圖表內(nèi)處理數(shù)據(jù)的能力更是提出了一種表示信息的絕佳方式。比方說(shuō),用戶只要單擊地區(qū)銷售數(shù)據(jù)的餅圖中的某一塊就可以顯示出該塊地區(qū)的詳細(xì)情況,你甚至還可以把其中的數(shù)據(jù)拖到一個(gè)新圖中去。
你可以用調(diào)度(scheduling)工具產(chǎn)生大量圖片或者在確定之前先產(chǎn)生唯一一張的大型圖表留待將來(lái)訪問(wèn)。同F(xiàn)lash MX
的直接交流功能可以讓用戶用Flash MX創(chuàng)建定制圖象和圖表并為其傳遞數(shù)據(jù)。
更廣泛的XML支持
我們采用XML技術(shù)的時(shí)間也不算短了。在5.0版本的ColdFusion中,為了訪問(wèn)和操作XML數(shù)據(jù),我們只有3個(gè)選擇:選擇同XML數(shù)據(jù)接口的定制標(biāo)簽、安裝和使用COM同解析器協(xié)作(這就是我采用的MS
XML解析器利用方法)或者根本就不別利用XML。有了MX,XML對(duì)象或者數(shù)據(jù)就會(huì)被先行解析為一種本機(jī)ColdFusion對(duì)象,然后其用法同其他ColdFusion變量別無(wú)二至。
圖A說(shuō)明了我們?cè)L問(wèn)Parser COM對(duì)象以及之后利用CFSCRIPT把數(shù)據(jù)裝入變量的方法,這還只是若干方法之一。有了MX
你絲毫不用擔(dān)心CFSCRIPT、定制標(biāo)簽或者第3方解析器的解析問(wèn)題。
圖A
用CFSCRIPT訪問(wèn)COM對(duì)象
為了創(chuàng)建XML文檔,你只需要用<CFXML>標(biāo)簽即可。而解析現(xiàn)有的XML對(duì)象則可以采用XMLParse()函數(shù)。
如圖B所示, ColdFusion
MX令XML的處理變得更為方便。這樣做在某些情況下,比如宿主環(huán)境(這種情況下你無(wú)法安裝解析器或者CFX定制標(biāo)簽)就大有裨益。內(nèi)部XML解析器的另一優(yōu)點(diǎn)是Web服務(wù)器上可以安裝更少的組件從而降低了系統(tǒng)崩潰的概率,從而令用戶的工作變得更輕松。
圖B
ColdFusion
MX處理XML
支持J2EE
ColdFusion MX引擎已經(jīng)被重新構(gòu)造以支持J2EE
Java應(yīng)用服務(wù)器。從而給ColdFusion現(xiàn)有的易用性和RAD增添了新的強(qiáng)大功能和更好的可用性。
支持J2EE平臺(tái)意味著ColdFusion模版在被初次訪問(wèn)的時(shí)候會(huì)被編譯為Java字節(jié)碼,相比ColdFusion
5中的同等代碼則在今后的執(zhí)行中獲得更快地執(zhí)行速度。此外,ColdFusion
MX還在其CFML模版中包括了JSP標(biāo)簽庫(kù)。Java可以被寫(xiě)入標(biāo)簽庫(kù)之后再包含在ColdFusion之內(nèi),令Java和ColdFusion的開(kāi)發(fā)可以分頭進(jìn)行。圖C所示表明在應(yīng)用程序中導(dǎo)入JSP標(biāo)簽庫(kù)可謂方便之極。
圖 C
利用<CFIMPORT>包含JSP標(biāo)簽庫(kù)
就那么簡(jiǎn)單。實(shí)際上<CFIMPORT>標(biāo)簽就只有3個(gè)屬性,但只有taglib屬性是必需的。你還可以用同樣的方式利用Java
Beans、EJBs和Java API。
J2EE平臺(tái)還讓ColdFusion在更多的平臺(tái)上找到了自己的一席之地。正如我們?cè)缦忍岬降哪菢樱粋€(gè)特殊的J2EE版本允許ColdFusion可以運(yùn)行在WebLogic、WebSphere和Sun
ONE等常見(jiàn)的應(yīng)用服務(wù)器上。這種同Java技術(shù)的緊密結(jié)合填補(bǔ)了ColdFusion開(kāi)發(fā)人員和Java開(kāi)發(fā)人員之間的技術(shù)鴻溝。
Web服務(wù)
Web服務(wù)是現(xiàn)在一個(gè)非常時(shí)髦的字眼。Web服務(wù)潛力巨大而且會(huì)給Web應(yīng)用程序帶來(lái)革命性的轉(zhuǎn)變。正是以上的原因ColdFusion
MX也提供了創(chuàng)建和采用Web服務(wù)的技術(shù)支持。MX同微軟的.NET在Web服務(wù)方面完全兼容。
可想而知,
Web服務(wù)在ColdFusion中的利用也是基于標(biāo)簽的。而你所需要的無(wú)非是知道Web服務(wù)的位置和內(nèi)容或者必要的參數(shù)。ColdFusion會(huì)為你打點(diǎn)Web服務(wù)的SOAP方面。圖D演示了Web服務(wù)的利用。其他環(huán)境下的同一過(guò)程也只需幾行代碼。
圖D
Web服務(wù)的使用
<CFINVOKE>標(biāo)簽可以同可選的<CFINVOKEARGUMENT>標(biāo)簽一道使用。后者只有在Web服務(wù)需要發(fā)送參數(shù)的時(shí)候才會(huì)被用到。否則,你只需要調(diào)用它并提供一個(gè)變量用來(lái)保存結(jié)果即可。這樣不管Web服務(wù)返回什么數(shù)據(jù)你都擁有了一個(gè)局部ColdFusion變量。
Web服務(wù)的創(chuàng)建就像其訪問(wèn)方式一樣方便。采用<CFCOMPONENT>標(biāo)簽即可創(chuàng)建你所需要的Web服務(wù)。ColdFusion
Components
(CFCs)同其他ColdFusion要素的創(chuàng)建方式略有不同。首先,它們具有不同的文件擴(kuò)展名,.cfc不同于傳統(tǒng)的.cfm。CFC是面向?qū)ο蟮模鴤鹘y(tǒng)的ColdFusion模版則不是。面向?qū)ο罅頒oldFusion煥然一新。你的代碼現(xiàn)在可以提供自身的文檔化和有關(guān)的支持、利用對(duì)象的繼承性,同時(shí)在單一模版中提供多種方法(定制標(biāo)簽則是一個(gè)標(biāo)簽一個(gè)方法)和方法級(jí)的安全性。圖E演示了一個(gè)簡(jiǎn)單的CFC結(jié)構(gòu)。
圖E
創(chuàng)建簡(jiǎn)單的CFC
小結(jié)
ColdFusion
MX既是一種新版本的ColdFusion語(yǔ)言同時(shí)也為ColdFusion開(kāi)發(fā)人員提供了更強(qiáng)大的開(kāi)發(fā)能力。對(duì)那些喜歡ColdFusion的人來(lái)說(shuō),實(shí)際上并沒(méi)有什么改變,
ColdFusion的開(kāi)發(fā)同以往沒(méi)有任何不同,只是增加某些新標(biāo)簽。而那些想更深入Java開(kāi)發(fā)的技術(shù)人員則會(huì)從ColdFusion的易用性和RAD獲益,MX在沒(méi)有放棄ColdFusion的情況下為深入Java提供了一個(gè)優(yōu)秀的平臺(tái)。你可以編寫(xiě)JSP標(biāo)簽庫(kù)然后在自己的ColdFusion模版中采用。
ColdFusion
MX的新特性是Macromedia公司應(yīng)對(duì)競(jìng)爭(zhēng)的重要舉措。ASP和PHP都是其優(yōu)點(diǎn)可圈可點(diǎn)的優(yōu)秀編程語(yǔ)言,但是就開(kāi)發(fā)強(qiáng)大的、可伸縮的Web應(yīng)用程序來(lái)說(shuō)卻并沒(méi)有比ColdFusion占據(jù)任何優(yōu)勢(shì)。ColdFusion
MX只需要區(qū)區(qū)樹(shù)行代碼就足以提供Web服務(wù)、XML和J2EE平臺(tái)兼容性,而且開(kāi)發(fā)人員無(wú)須再度學(xué)習(xí)一門(mén)新的編程語(yǔ)言或者協(xié)議。
|