試析新一代電子商務(wù)平臺(tái)中Java XML的應(yīng)用體現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
電子商務(wù)作為一種新型的貿(mào)易方式,極大地促進(jìn)了經(jīng)濟(jì)貿(mào)易的發(fā)展,同時(shí)也正在改變?nèi)藗兊乃季S以及生活方式。近幾年,電子商務(wù)的發(fā)展速度比任何人想像中的還要快,電子商務(wù)平臺(tái)在未來(lái)經(jīng)濟(jì)體系中扮演著舉足輕重的角色。然而在電子商務(wù)平臺(tái)中,建立具有高度安全性、實(shí)用性以及可信度較強(qiáng)的應(yīng)用軟件有著非常現(xiàn)實(shí)的意義,是人們必須探索與研究的重要課題。
1 XML異構(gòu)數(shù)據(jù)庫(kù)集成概念闡述
XML與Java有一個(gè)顯著的共同優(yōu)點(diǎn),即平臺(tái)獨(dú)立。XML適用于平臺(tái)獨(dú)立、易于提取信息的文檔以及數(shù)據(jù)的處理。如果將XML看成是數(shù)據(jù)的名詞,那么Java就是數(shù)據(jù)處理的動(dòng)詞。而Java則較適于平臺(tái)獨(dú)立、易于處理的面向?qū)ο蟮膽?yīng)用軟件解決方案。異構(gòu)數(shù)據(jù)源集成必須選擇一種全局的數(shù)據(jù)模式來(lái)統(tǒng)一異構(gòu)的源數(shù)據(jù)模式。在這一領(lǐng)域中,XML作為一種中間的數(shù)據(jù)接口,己經(jīng)顯示出其不可替代的重要性。
各個(gè)異構(gòu)數(shù)據(jù)庫(kù)的Schema通過(guò)相應(yīng)的映射文件融入全局Schema。翻譯器根據(jù)映射文件和用戶(hù)的查詢(xún)條件和參數(shù),將邏輯查詢(xún)轉(zhuǎn)換為針對(duì)各物理數(shù)據(jù)庫(kù)的子查詢(xún),并輸出相應(yīng)的XML子文檔。在集成器的作用下,各XML子文檔中的數(shù)據(jù)均被轉(zhuǎn)換為一個(gè)DOM對(duì)象,通過(guò)用戶(hù)定制的業(yè)務(wù)規(guī)則,過(guò)濾、計(jì)算和合并這些DOM對(duì)象中的數(shù)據(jù),集成后的數(shù)據(jù)是一個(gè)XML文檔,通過(guò)轉(zhuǎn)換器以用戶(hù)定義的形式展現(xiàn)給客戶(hù)端??梢宰寯?shù)據(jù)在不同的來(lái)源中,根據(jù)通用的語(yǔ)法規(guī)則來(lái)開(kāi)發(fā)基于Java的技術(shù)平臺(tái),使用XML作為數(shù)據(jù)交換的標(biāo)準(zhǔn)。
2 電子商務(wù)平臺(tái)中引入XML與Java的意義
目前,能較好運(yùn)行的B2B平臺(tái)由于系統(tǒng)間傳送的EDI文本是面向機(jī)器的,其人工可讀性以及擴(kuò)展性太差,真正用來(lái)做實(shí)際商務(wù)的很少,因此仍無(wú)法吸引眾多企業(yè),大多數(shù)仍處在信息發(fā)布階段。因此,搭建一個(gè)具有可用性的電子商務(wù)交易平臺(tái)就非常重要了。
“Java+XML=真正的跨平臺(tái)電子商務(wù)系統(tǒng)” 是一個(gè)多對(duì)多的、以Web為基礎(chǔ)的貿(mào)易網(wǎng)絡(luò)。由于Java的跨平臺(tái)性,所以選擇Java作為軟件的開(kāi)發(fā)工具,同時(shí)采用了XML具有良好的通用性以及共享性作為數(shù)據(jù)交換的標(biāo)準(zhǔn)。它使企業(yè)能夠更有效地在其供應(yīng)鏈上完成購(gòu)買(mǎi)、銷(xiāo)售以及協(xié)作活動(dòng),形成一個(gè)完整的供應(yīng)鏈。由此奠定了其發(fā)展的廣闊前景。
3 電子商務(wù)平臺(tái)面臨的安全分析
(1)信息安全隱患
網(wǎng)絡(luò)通信的無(wú)紙化、信息化、高效率使得交易信息的保密性至關(guān)重要。電子商務(wù)的交易信息在網(wǎng)絡(luò)傳輸中,可能受到非法用戶(hù)的篡改。如果用戶(hù)的重要信息(如信用卡帳號(hào)以及密碼)泄漏,很可能使用戶(hù)蒙受財(cái)產(chǎn)損失,使得信息的完整性以及真實(shí)性受到破壞,企業(yè)信譽(yù)與用戶(hù)金錢(qián)受到損失。
(2)存在程序缺陷
由于調(diào)試JSP效率極低,調(diào)試JSP時(shí)必須等到前端程序結(jié)束才能看到效果,代碼嵌入頁(yè)面導(dǎo)致頁(yè)面臃腫、邏輯復(fù)雜,一點(diǎn)點(diǎn)小的修改都會(huì)引起JSP的重新編譯,因此,程序員以及美工的接口必須精確定義,進(jìn)而確保編輯的安全性。
(3)缺乏法律保障
目前的《電子簽名法》對(duì)構(gòu)建基于Java XML技術(shù)的新一代電子商務(wù)平臺(tái)相應(yīng)的行政管理、技術(shù)規(guī)范的支持力度依然十分薄弱。另外,對(duì)于我國(guó)特有的XML與Java的整合應(yīng)用而言,推翻原有的傳統(tǒng)數(shù)據(jù)交換格式將會(huì)改變絕大部分軟件系統(tǒng),對(duì)于那些已投入運(yùn)行的ERP系統(tǒng)來(lái)說(shuō)實(shí)屬不易,系統(tǒng)間的轉(zhuǎn)換將成為企業(yè)與XML及 Java的整合應(yīng)用之間的障礙。
4 電子商務(wù)平臺(tái)中XML與Java整合應(yīng)用表現(xiàn)
(1)XML應(yīng)用框架搭建
一個(gè)XML解析器(Parser)是一段可以讀入一個(gè)XML文檔并分析其結(jié)構(gòu)的代碼。實(shí)際上,為了能夠處理XML文檔,幾乎所有的XML應(yīng)用都需要一個(gè)解析器,如圖1所示,它為用戶(hù)提供了一個(gè)接口,以及對(duì)后端存儲(chǔ)數(shù)據(jù)的一個(gè)接口。解析器能夠判斷一個(gè)XML文檔是否有效(validating)即是否遵守DTD/Schema標(biāo)準(zhǔn)。
在本系統(tǒng)中,將貨單XML文件定義為一個(gè)SavcInvoice類(lèi)型的消息,基于事件的解析器實(shí)際上是通過(guò)串行方式來(lái)處理文檔的。因此,解析器之間的區(qū)別在于它們是否支持完整性檢查、文檔表現(xiàn)形式轉(zhuǎn)化以及它處理文檔的方式。例如,用戶(hù)在選訂商品時(shí),這個(gè)過(guò)程類(lèi)似于B2C網(wǎng)上商場(chǎng)的購(gòu)物車(chē)。解析器自動(dòng)構(gòu)成類(lèi)似于一張二維表的數(shù)據(jù)結(jié)構(gòu),結(jié)賬時(shí)再把里面的值取出,并一一對(duì)應(yīng)地顯示出來(lái)。將用戶(hù)所選的商品及其詳細(xì)信息以XML的格式保存起來(lái),利用DOM對(duì)其操作。此時(shí),對(duì)購(gòu)物車(chē)?yán)锏纳唐返奶砑?、修改以及刪除操作就變成了對(duì)這棵DOM樹(shù)中的節(jié)點(diǎn)的添加、修改以及刪除。實(shí)際操作是非常簡(jiǎn)單與快捷的。
(2)封裝邏輯處理的Java-Bean
為了實(shí)現(xiàn)界面顯示以及邏輯處理的分離,基于Java XML的新一代電子商務(wù)平臺(tái)中使用Java Bean來(lái)封裝所有的邏輯處理。Bean的設(shè)計(jì)依據(jù)面向?qū)ο蟮脑瓌t,提供了該對(duì)象所擁有的屬性以及方法。通過(guò)對(duì)象的調(diào)用來(lái)完成相應(yīng)的邏輯處理。例如,當(dāng)企業(yè)要更新產(chǎn)品信息、發(fā)布拍賣(mài)品信息時(shí),在編程實(shí)現(xiàn)的過(guò)程中用到大量的、不同參數(shù)的SQL語(yǔ)句,雖然可以利用Java的函數(shù)重載,但可讀性會(huì)降低,程序變得更加復(fù)雜。為了解決這個(gè)難題,本方法通過(guò)Java函數(shù),動(dòng)態(tài)地生成不同的SQL語(yǔ)句。
//從數(shù)據(jù)庫(kù)中取的談話(huà)信息
sql=select msg from chatmsg where companyid=“+id+”and msgthne>“斗6me+” order by msgtime”;
rs=“stmt.executeQuery(sql);
……
//在JSP網(wǎng)頁(yè)程序中用JavaScript實(shí)現(xiàn)對(duì)話(huà)信息的粘貼
parent.chatdisplay.doeument.write(”<%。=rs.getString(“msg”m>%):
scrollWindow();
當(dāng)再執(zhí)行添加、更新操作時(shí),只需調(diào)用Java與XML通用方法即可,無(wú)需在調(diào)用時(shí)傳入任何參數(shù),因?yàn)橐獔?zhí)行的SQL語(yǔ)句就會(huì)更簡(jiǎn)單,效果就更明顯。
(3)企業(yè)與用戶(hù)信息交換的實(shí)現(xiàn)
信息交換系統(tǒng)由存放在模式庫(kù)用戶(hù)端的對(duì)電子商務(wù)內(nèi)容進(jìn)行定義的XML文件、數(shù)據(jù)模式文件以及服務(wù)器端信息交換代理程序三個(gè)功能模塊組成。在這個(gè)系統(tǒng)里,從用戶(hù)端提取的XML的字串作為數(shù)據(jù)庫(kù)里一個(gè)字段的存儲(chǔ)內(nèi)容,提交人及提交日期將會(huì)被提取拼裝成一個(gè)XML串提交給服務(wù)器,然后作為一個(gè)字段存人數(shù)據(jù)庫(kù)。例如,可以為每一個(gè)注冊(cè)企業(yè)開(kāi)辟一個(gè)網(wǎng)上交易的“平臺(tái)”,實(shí)際上是采取數(shù)據(jù)庫(kù)聊天室的機(jī)制。它提供了三種安全機(jī)制:XML簽名機(jī)制、安全性令牌傳播機(jī)制以及Java加密機(jī)制,如圖2所示。
服務(wù)的核心目標(biāo)是提供機(jī)構(gòu)語(yǔ)言以及平臺(tái)的集成與交互。當(dāng)企業(yè)開(kāi)始當(dāng)天的網(wǎng)上營(yíng)業(yè)時(shí),用戶(hù)才能登錄并進(jìn)入該平臺(tái)。該平臺(tái)屏蔽了無(wú)用的信息,操作員以及用戶(hù)看到的都只是他們之間的對(duì)話(huà)信息。用戶(hù)在平臺(tái)里可以看見(jiàn)企業(yè)所有產(chǎn)品的信息,并能與企業(yè)的操作員進(jìn)行產(chǎn)品的咨詢(xún)以及討價(jià)還價(jià),當(dāng)達(dá)成協(xié)議后,通過(guò)網(wǎng)上訂單來(lái)完成購(gòu)物。實(shí)時(shí)交易充分體現(xiàn)了Java與XML整合運(yùn)用的“市場(chǎng)”特性,也是其不同于通常電子商務(wù)的特征之一。
綜上所述,Java語(yǔ)言代碼級(jí)以及XML數(shù)據(jù)交換的整合運(yùn)用,集成了XML可擴(kuò)展性、良好的數(shù)據(jù)存儲(chǔ)格式、高度結(jié)構(gòu)化的特征以及Java語(yǔ)言跨平臺(tái)的優(yōu)點(diǎn),具有高效、靈活、適應(yīng)性強(qiáng)的特征。為新一代的電子商務(wù)交易平臺(tái)的安全與信息處理提供了保障,適用于企業(yè)與企業(yè)跨平臺(tái)計(jì)算機(jī)應(yīng)用系統(tǒng)之間的信息交換以及商務(wù)往來(lái),其應(yīng)用前景十分廣闊。
但是,基于Java XML的新一代電子商務(wù)平臺(tái)仍然存在一些技術(shù)與實(shí)踐中的不足,仍需要不斷地鉆研,并提出有效的解決方案,進(jìn)而有效地將Java、XML兩者結(jié)合,并更廣泛地應(yīng)用于電子商務(wù)交易中,促進(jìn)我國(guó)經(jīng)濟(jì)的快速發(fā)展。