l 引言
隨著第三代移動(dòng)通信技術(shù)(3G)入網(wǎng)牌照的發(fā)放,我國(guó)移動(dòng)通信技術(shù)領(lǐng)域又進(jìn)入了一個(gè)新(NGN)階段。其中,3G技術(shù)的一個(gè)重要應(yīng)用就是解決移動(dòng)商務(wù)問(wèn)題。3A模式(anytime,anywhere,anyways)的基本要求就是目前擺在軟件開(kāi)發(fā)人員面前的難題。為此,經(jīng)過(guò)實(shí)踐,以及對(duì)集成環(huán)境的測(cè)試,提出了一套新型符合當(dāng)今3G技術(shù)要求的移動(dòng)商務(wù)系統(tǒng)集成架構(gòu)。實(shí)踐證明,該套架構(gòu)能有效滿足當(dāng)今3G技術(shù)對(duì)應(yīng)用層的廣泛需求。
2 移動(dòng)商務(wù)集成架構(gòu)需解決的問(wèn)題
移動(dòng)商務(wù)集成架構(gòu)技術(shù)需要解決的問(wèn)題很多。為了保證數(shù)據(jù)在移動(dòng)網(wǎng)和互聯(lián)網(wǎng)中流動(dòng)順暢、安全、可靠,必須采用多門(mén)學(xué)科和技術(shù)予以解決。為此,根據(jù)架構(gòu)需求,提出需要解決的問(wèn)題,及其相應(yīng)的解決辦法。
2.1 持久性數(shù)據(jù)和計(jì)算機(jī)內(nèi)存數(shù)據(jù)的映射和同步
持久性數(shù)據(jù)是存放在關(guān)系數(shù)據(jù)庫(kù)表中的數(shù)據(jù),在訪問(wèn)系統(tǒng)應(yīng)用服務(wù)器(APP Server)時(shí),如果遠(yuǎn)程終端用戶直接訪問(wèn)關(guān)系數(shù)據(jù)庫(kù),則會(huì)增大數(shù)據(jù)庫(kù)的壓力,特別是在客戶量較大時(shí),難以保證系統(tǒng)的正常運(yùn)行。為此,必須將數(shù)據(jù)庫(kù)中的持久化數(shù)據(jù)(Persistent)映射到服務(wù)器的內(nèi)存中(JavaBeans對(duì)象),客戶只要訪問(wèn)內(nèi)存中的數(shù)據(jù)。就等于訪問(wèn)了數(shù)據(jù)庫(kù)中的數(shù)據(jù),這樣就極大地減少了數(shù)據(jù)庫(kù)的壓力。但是,如何確保內(nèi)存中的數(shù)據(jù)與數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致,就是系統(tǒng)必須解決的問(wèn)題,否則會(huì)出現(xiàn)意想不到的結(jié)果。為了解決這一問(wèn)題,采用了世界流行的對(duì)象關(guān)系映射(0biect Relaition Mapping,簡(jiǎn)稱(chēng)ORM)Hibemate技術(shù)。它提供了6個(gè)主要接口和可靠、靈活、方便的0RM解決方案,能夠確保數(shù)據(jù)映射過(guò)程的安全和同步。圖l給出這6個(gè)接口之間的關(guān)系。圖2給出Hibemate在整個(gè)系統(tǒng)中的位置。
2.2 業(yè)務(wù)層數(shù)據(jù)的集成
Hibernate技術(shù)只完成了將內(nèi)存中數(shù)據(jù)和數(shù)據(jù)庫(kù)中數(shù)據(jù)的映射和同步問(wèn)題,即ORM工作。然而,一個(gè)完整的系統(tǒng),還需要實(shí)現(xiàn)靈活、維護(hù)、擴(kuò)展都靈活、方便的其他功能。為此,需要一個(gè)強(qiáng)大且靈活的集成環(huán)境,以起到上下傳遞數(shù)據(jù)的樞紐作用,這就要求系統(tǒng)的每一部分,即模塊之間形成松散耦合,一個(gè)部分(模塊)工作,不會(huì)影響到另一個(gè)部分,然后將每一部分集成起來(lái),管理系統(tǒng)的業(yè)務(wù)。這就要求業(yè)務(wù)層能夠接收手機(jī)終端發(fā)來(lái)的請(qǐng)求Request。將Request對(duì)象傳遞到Hi—bemate數(shù)據(jù)訪問(wèn)對(duì)象DAO,調(diào)用對(duì)象關(guān)系映射引擎,將檢索到的數(shù)據(jù)通過(guò)Ressponse輸送到手機(jī)終端。
該系統(tǒng)采用世界上最流行的Spring技術(shù)來(lái)滿足集成架構(gòu)的業(yè)務(wù)層需要。圖3給出其邏輯位置。
2.3 業(yè)務(wù)層數(shù)據(jù)與客戶終端的交互
系統(tǒng)業(yè)務(wù)層與客戶端的交互,需要采用Web Service技術(shù)。該技術(shù)是XML技術(shù)的一個(gè)非常重要的應(yīng)用,它的出現(xiàn)大大提高了應(yīng)用程序的互操作性,為電子商務(wù)的發(fā)展和成功奠定了堅(jiān)實(shí)的基礎(chǔ)。
Web Service技術(shù)的特點(diǎn)是:①具有松散耦合和可復(fù)用的軟件模塊;②具有自包含、自描述、模塊化的應(yīng)用程序;③可以通過(guò)Web Service發(fā)布、定位和調(diào)用。因此,Web Service是互聯(lián)網(wǎng)應(yīng)用需求和技術(shù)發(fā)展的雙重物,它代表了新一代軟件架構(gòu)模式,即通過(guò)互聯(lián)網(wǎng)架構(gòu)來(lái)應(yīng)用軟件,即服務(wù)軟件。Web Service技術(shù)在不同系統(tǒng)(包括異構(gòu)系統(tǒng))之間起到一個(gè)運(yùn)輸服務(wù)的橋梁作用,而且也不依賴任何系統(tǒng)。因此需要根據(jù)Spring的業(yè)務(wù)要求,創(chuàng)建相應(yīng)的WSDL,在其中描述系統(tǒng)提供的業(yè)務(wù)服務(wù)接口,并將其作為與手機(jī)終端交互數(shù)據(jù)的系統(tǒng)接口。
2.4 手機(jī)終端信息處理
手機(jī)終端是通過(guò)移動(dòng)網(wǎng)一網(wǎng)關(guān)一互聯(lián)網(wǎng)訪問(wèn)系統(tǒng)的。它要求用戶實(shí)現(xiàn)下述功能:
(1)能夠在手機(jī)界面選擇不同業(yè)務(wù)訪問(wèn)企業(yè)提供的服務(wù),呈現(xiàn)查詢各種信息的不同方法:
(2)能夠在手機(jī)界面上輸入各種查詢關(guān)鍵字,并提交到網(wǎng)站App Server;
(3)能夠?qū)z索到的數(shù)據(jù)進(jìn)行不同方式的處理;
(4)能夠使手機(jī)終端與App Server建立會(huì)話;
(5)能夠以數(shù)據(jù)流對(duì)象的方式接收系統(tǒng)App Server返回的不同類(lèi)型數(shù)據(jù)。
手機(jī)終端訪問(wèn)系統(tǒng)的主要接口也采用Web Service,這樣即可將系統(tǒng)提供的服務(wù)很方便地運(yùn)送到手機(jī)終端,以實(shí)現(xiàn)移動(dòng)商務(wù)業(yè)務(wù)的數(shù)據(jù)交互。
3 移動(dòng)商務(wù)應(yīng)用系統(tǒng)架構(gòu)集成
由上述分析可見(jiàn),為了集成移動(dòng)商務(wù)應(yīng)用系統(tǒng),需要?jiǎng)?chuàng)建的技術(shù)架構(gòu)應(yīng)包括下述新型技術(shù):[IE]+[Desktop]+Cell—Phone+[MVC(Struts/JSF)]+WebService+Spring+Hibernate+Ora—cle(SOL Server)。圖4給出整個(gè)系統(tǒng)集成后的技術(shù)架構(gòu)。
4 結(jié)語(yǔ)
根據(jù)論述,提出了一套新的移動(dòng)商務(wù)應(yīng)用系統(tǒng)架構(gòu)模式。以此可將企業(yè)的應(yīng)用系統(tǒng)拓展為1套后臺(tái)服務(wù)和3種不同的客戶終端。前者用于提供企業(yè)的各種服務(wù),處理企業(yè)的各種業(yè)務(wù)邏輯;后者用于IE瀏覽器客戶端、桌面(DeskTop)客戶端和手機(jī)(Cell Phone)客戶端。采用該架構(gòu)模型,可將企業(yè)的業(yè)務(wù)無(wú)限擴(kuò)展到有互聯(lián)網(wǎng)和移動(dòng)網(wǎng)的任何角落,實(shí)現(xiàn)3A模式的商務(wù)系統(tǒng),實(shí)時(shí)處理企業(yè)的業(yè)務(wù)。經(jīng)過(guò)具體案例驗(yàn)證,該系統(tǒng)的集成架構(gòu)非常有效、流暢、安全和可靠,不僅維護(hù)方便,擴(kuò)展簡(jiǎn)單,實(shí)現(xiàn)了整個(gè)系統(tǒng)的松耦合,而且是一項(xiàng)非常值得推廣的新型移動(dòng)商務(wù)技術(shù)集成架構(gòu)。