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