[摘 要] 網(wǎng)上購(gòu)物是電子商務(wù)系統(tǒng)的一個(gè)重要的組成部分,本文采用COM組件技術(shù)實(shí)現(xiàn)了網(wǎng)上購(gòu)物車,增強(qiáng)了網(wǎng)上購(gòu)物車系統(tǒng)的安全性和使用效率。
[關(guān)鍵詞] COM組件技術(shù) 電子商務(wù)系統(tǒng) 網(wǎng)上購(gòu)物車
一、引言
目前,對(duì)于電子商務(wù)來(lái)說(shuō),如何構(gòu)建高效率、高性能可重用的系統(tǒng)是一個(gè)需要深入研究的課題。網(wǎng)絡(luò)通信技術(shù)和計(jì)算機(jī)硬件技術(shù)的顯著進(jìn)步不僅有力地支持了電子商務(wù)應(yīng)用的飛躍式發(fā)展,同時(shí)也大大提高了大型分布式商務(wù)軟件系統(tǒng)的規(guī)模和復(fù)雜度,使企業(yè)級(jí)電子商務(wù)系統(tǒng)的構(gòu)建技術(shù)面臨新的挑戰(zhàn)。人們迫切希望構(gòu)建的企業(yè)級(jí)電子商務(wù)系統(tǒng)既具有高性能、高效率、易部署、易維護(hù)和高可靠性的優(yōu)點(diǎn),又能靈活地適應(yīng)企業(yè)業(yè)務(wù)需求的不斷變化,方便地支持系統(tǒng)的擴(kuò)展、移植和重用。
二、COM組件技術(shù)
COM是開發(fā)軟件組件的一種方法。組件實(shí)際上是一些小的二進(jìn)制可執(zhí)行程序,它們可以給應(yīng)用程序,操作系統(tǒng),以及其他組件提供服務(wù),能夠跨越鏈接庫(kù)、應(yīng)用程序、系統(tǒng)軟件甚至網(wǎng)絡(luò)軟件,多個(gè)COM對(duì)象甚至可以聯(lián)接起來(lái)形成應(yīng)用程序或組件系統(tǒng)。它們也是開發(fā)人員時(shí)刻都在期望的一種技術(shù),利用這種技術(shù)開發(fā)自定義的COM組件就如同開發(fā)動(dòng)態(tài)的,面向?qū)ο蟮腁PI,能輕松地開發(fā)出大型而復(fù)雜的應(yīng)用系統(tǒng),也能盡可能地利用現(xiàn)有的資源,以一種堆砌的方式來(lái)構(gòu)造自己的應(yīng)用。COM構(gòu)架下,人們可以開發(fā)出各種各樣的功能專一的組件,然后將它們按照需要組合起來(lái),構(gòu)成復(fù)雜的應(yīng)用系統(tǒng)。COM(組件對(duì)象模型)是一個(gè)與操作平臺(tái)無(wú)關(guān)的、分布的、面向?qū)ο蟮臋C(jī)制,它能創(chuàng)建可以相互交互的二進(jìn)制軟件模塊。COM的本質(zhì)特性是COM對(duì)象的接口與實(shí)現(xiàn)的分離。這些對(duì)象可以用不同的語(yǔ)言實(shí)現(xiàn),其結(jié)構(gòu)也可以不同?;贑OM的組件開發(fā)具有以下幾點(diǎn)優(yōu)勢(shì):
1.同語(yǔ)言的無(wú)關(guān)性。COM是二進(jìn)制的設(shè)計(jì)標(biāo)準(zhǔn),它與語(yǔ)言無(wú)關(guān),所以生成的模塊能夠被各種開發(fā)工具所共享。COM類突破了C++修飾符不兼容的限制,能夠最大程度地實(shí)現(xiàn)基于OOP的模塊重用。
2.提供深入系統(tǒng)底層的手段。正因?yàn)镃OM同語(yǔ)言無(wú)關(guān),因此開發(fā)和使用的工具可以完全不同,這樣就可以在實(shí)現(xiàn)時(shí)利用像Visual C++這種可以深入操作系統(tǒng)的產(chǎn)品,而讓Visual Basic來(lái)使用,從而達(dá)到擴(kuò)展RDT的目的。
3.版本升級(jí)的魯棒性。COM通過(guò)組件接口(Component Interface)實(shí)現(xiàn)版本升級(jí)的穩(wěn)定性。由于一個(gè)組件可以適應(yīng)同一接口的細(xì)小變化,所以COM可以允許只更新組件而原先的應(yīng)用程序不用更改,同時(shí)新的應(yīng)用程序可以利用組件的新添特性。
4.產(chǎn)品技術(shù)結(jié)構(gòu)轉(zhuǎn)變的平滑性。由于COM是一項(xiàng)基本的技術(shù),因此它可以相當(dāng)容易地從單機(jī)應(yīng)用轉(zhuǎn)向網(wǎng)絡(luò)應(yīng)用(DCOM)或是更先進(jìn)的多層框架結(jié)構(gòu)(COM+),使得產(chǎn)品未來(lái)的升級(jí)性和應(yīng)用范圍大大增加。
自動(dòng)化對(duì)象就是指實(shí)現(xiàn)了IDispatch接口的COM對(duì)象。IDispatch接口是自動(dòng)化對(duì)象的核心,自動(dòng)化對(duì)象的所有特性全部體現(xiàn)在IDispatch接口上,只要一個(gè)COM對(duì)象實(shí)現(xiàn)了IDispatch接口,那么它就是一個(gè)自動(dòng)化對(duì)象。自動(dòng)化組件的結(jié)構(gòu)如圖1所示。自動(dòng)化組件允許你向外公開整個(gè)程序的功能,它支持后綁定(Late binding即運(yùn)行時(shí)綁定)。
這樣,客戶機(jī)程序能夠在基于自動(dòng)化的服務(wù)器上動(dòng)態(tài)訪問(wèn)組件。在系統(tǒng)中支持自動(dòng)化功能,定義了統(tǒng)一的自動(dòng)化接口。當(dāng)集成了統(tǒng)一用戶接口和繪制圖的自動(dòng)化組件注冊(cè)后,就可以動(dòng)態(tài)的在該平臺(tái)下調(diào)用。
三、網(wǎng)上購(gòu)物車
網(wǎng)上購(gòu)物車是電子商務(wù)中一個(gè)重要的組成部分,電子商務(wù)可以簡(jiǎn)單地理解為是利用Internet技術(shù),將企業(yè)、用戶、供應(yīng)商,以及其它商業(yè)和貿(mào)易的所需環(huán)節(jié)連接到現(xiàn)有的信息技術(shù)系統(tǒng)上的商品貿(mào)易活動(dòng)。網(wǎng)上商店正逐漸被人們接受。
1.網(wǎng)上購(gòu)物車是網(wǎng)上商店的重要組成部分。網(wǎng)上商店管理系統(tǒng)一般分為網(wǎng)上商店前臺(tái)和后臺(tái)兩個(gè)管理子系統(tǒng)。后臺(tái)管理子系統(tǒng)主要是管理網(wǎng)上商店的全部數(shù)據(jù)信息,一般由客戶管理模塊、訂單管理模塊、商品管理等功能模塊組成。前臺(tái)管理子系統(tǒng)的主要功能是引導(dǎo)客戶(網(wǎng)站訪問(wèn)者)完成網(wǎng)上購(gòu)物的過(guò)程,一般由商品瀏覽檢索模塊、會(huì)員訪問(wèn)模塊購(gòu)物車等功能模塊組成。網(wǎng)上購(gòu)物車是網(wǎng)上商店的核心部分,客戶通過(guò)網(wǎng)上購(gòu)物車進(jìn)行購(gòu)物,集中結(jié)算,網(wǎng)上商店管理系統(tǒng)的組成如圖2所示。
2.網(wǎng)上購(gòu)物車的功能。網(wǎng)上購(gòu)物與到超市購(gòu)物過(guò)程類似,顧客可以將商品隨時(shí)放入購(gòu)物車或從購(gòu)物車放回到貨架上。網(wǎng)上購(gòu)物車的主要功能有:(1)新建購(gòu)物車;(2)添加商品;(3)刪除商品;(4)修改購(gòu)物車中的商品數(shù)量并重新計(jì)算所有商品的金額(5)清空購(gòu)物車;(6)顯示購(gòu)物車;(7)會(huì)員資格確認(rèn)后,保存購(gòu)物車的訂單數(shù)據(jù)。
四、網(wǎng)上購(gòu)物車COM組件的設(shè)計(jì)與實(shí)現(xiàn)
用一個(gè)COM組件實(shí)現(xiàn)網(wǎng)上購(gòu)物車,組件中的方法實(shí)現(xiàn)購(gòu)物車的功能。例如在組件中createCart方法實(shí)現(xiàn)創(chuàng)建購(gòu)物車的功能;addItem方法實(shí)現(xiàn)在購(gòu)物車中添加物品的功能;saveItem方法實(shí)現(xiàn)保存購(gòu)物車的功能;updateItem方法實(shí)現(xiàn)在購(gòu)物車中重新計(jì)算所有物品的金額的功能;deleteItem方法實(shí)現(xiàn)在購(gòu)物車中刪除物品的功能;clearCart方法實(shí)現(xiàn)清空購(gòu)物車中所有物品的功能。使用java編寫的網(wǎng)上購(gòu)物車組件如下:
public class Cart
{
// TODO: Add additional methods and code here
/**
*NOTE: To add auto-registration code, refer to the documentation
*on the following method
*public static void onCOMRegister(boolean unRegister) {}
*/
public void createCart()
{……}
public void addItem ()
{……}
public void saveItem ()
{……}
public void updateItem ()
{……}
public void deleteItem ()
{……}
public void clearCart ()
{……}
}
五、結(jié)語(yǔ)
電子商務(wù)系統(tǒng)的性能優(yōu)劣是影響電子商務(wù)發(fā)展的一個(gè)重要因素,一個(gè)高性能的電子商務(wù)系統(tǒng)能夠促進(jìn)電子商務(wù)的發(fā)展。使用COM技術(shù)實(shí)現(xiàn)網(wǎng)上購(gòu)物車可以有效地提高系統(tǒng)的安全性和執(zhí)行效率。(1)從系統(tǒng)執(zhí)行效率方面看,首先COM組件是已經(jīng)編譯過(guò)的二進(jìn)制代碼,執(zhí)行速度快,此外,應(yīng)用程序連結(jié)數(shù)據(jù)庫(kù)時(shí),不再為每一個(gè)用戶分配一個(gè)連接,而是許多用戶可以通過(guò)COM組件管理服務(wù)器共享數(shù)據(jù)庫(kù)的連接,從而提高了系統(tǒng)運(yùn)行的效率。(2)從安全保護(hù)方面看,首先COM組件是編譯過(guò)的二進(jìn)制代碼,它可以封裝和保護(hù)源代碼,此外COM組件可由COM組件管理服務(wù)器統(tǒng)一管理,COM組件管理服務(wù)器可對(duì)COM組件進(jìn)行權(quán)限管理,使用戶訪問(wèn)數(shù)據(jù)庫(kù)時(shí),必須先進(jìn)行使用COM組件權(quán)限的檢查,從而對(duì)數(shù)據(jù)庫(kù)又加了一層保護(hù)。(3)從可擴(kuò)展性來(lái)看,商務(wù)規(guī)則可以集中放置在COM組件中,由所有的用戶共享,當(dāng)商務(wù)規(guī)則發(fā)生變化時(shí),只需要更新相應(yīng)的COM組件,使得系統(tǒng)的更新變得容易。
參考文獻(xiàn):
[1]帕拉特:COM精髓[M].北京:人民郵電出版社,2001
[2]斯萬(wàn)科:COM編程精彩實(shí)例[M].北京:中國(guó)電力出版社,2001
[3]郝大勇:基于內(nèi)容的圖像檢索試驗(yàn)平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn):[碩士學(xué)位論文],遼寧:遼寧師范大學(xué),2003
[4]臧 嶸:基于COM組件技術(shù)的網(wǎng)上購(gòu)物車的設(shè)計(jì)與實(shí)現(xiàn).計(jì)算機(jī)工程與應(yīng)用,2004.14
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文