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