賈峰
(廣東理工職業(yè)學(xué)院,廣州 510091)
校園電商平臺(tái)中購物車的設(shè)計(jì)與實(shí)現(xiàn)
賈峰
(廣東理工職業(yè)學(xué)院,廣州 510091)
針對校園電商系統(tǒng)業(yè)務(wù)的規(guī)模,基于Session和Cookie設(shè)計(jì)并實(shí)現(xiàn)了一款購物車。利用Session存儲(chǔ)購物車對象,購物信息放在List集合中;利用Cookie將購物信息集合轉(zhuǎn)換為商品ID和購買數(shù)量的字符串,保存在本地硬盤上。
購物車;Session;Cookie;jsp
購物車是校園電商平臺(tái)的重要組成部分,其功能包括:查看購物車,刪除、修改、清空購物車中的商品,計(jì)算購物車商品總價(jià)等。要想在網(wǎng)站上實(shí)現(xiàn)購物車功能,可以通過Cookie、Session或者數(shù)據(jù)庫方式,這幾種方法各有優(yōu)缺點(diǎn)[1]。本文首先提出基于Session設(shè)計(jì)購物車的方法,然后加入Cookie方式完善購物車,最后提出了基于 Session和Cookie購物車的設(shè)計(jì)與實(shí)現(xiàn)。
Session具有保存和跟蹤用戶狀態(tài)信息的功能,可以將會(huì)話期間的私有信息保存在服務(wù)器端[2],信息存儲(chǔ)在服務(wù)器端會(huì)更安全,不同用戶的購買數(shù)據(jù)存儲(chǔ)在不同的Session中?;赟ession購物車設(shè)計(jì)思路如圖1所示。
圖1 基于Session的購物車設(shè)計(jì)
圖1中(1)為用戶發(fā)送購物請求;(2)為服務(wù)器創(chuàng)建Session對象,不再直接訪問Session,而是綁定Cart對象,將用戶購物信息裝入購物車(Cart)對象中。Cart是一個(gè)CartItem(商品及數(shù)量)的List集合。用戶購買商品時(shí),只須調(diào)用Cart類的add方法即可。下面是購物車類的偽代碼:
這樣做的缺點(diǎn)是如果用戶不小心關(guān)閉了瀏覽器窗口,購物車中的信息就會(huì)丟失,要確保信息不會(huì)消失,需要引入Cookie機(jī)制。
Cookie是服務(wù)器臨時(shí)保存在瀏覽器端的少量數(shù)據(jù)。當(dāng)瀏覽器訪問服務(wù)器時(shí),服務(wù)器會(huì)將少量的數(shù)據(jù)以set-Cookie消息頭的方式發(fā)送給瀏覽器,瀏覽器會(huì)將這些數(shù)據(jù)臨時(shí)保存下來;當(dāng)瀏覽器再次訪問服務(wù)器時(shí),會(huì)將之前保存的這些數(shù)據(jù)以Cookie消息頭的方式發(fā)送給服務(wù)器。基于Cookie的方式實(shí)現(xiàn)購物車,信息存儲(chǔ)在客戶端,減輕了服務(wù)器的負(fù)荷;基于Cookie的購物車要求用戶瀏覽器必須支持并設(shè)置啟用Cookie,否則購物車失效[3]。購物車設(shè)計(jì)思路如圖2所示。
圖2中(1)(2)同Session的購物車設(shè)計(jì)。
(3)通過Cart中的store方法,將List集合轉(zhuǎn)換為一個(gè)等價(jià)的字符串并保存到Cookie中。在CartItem中最重要的信息就是商品ID和購買數(shù)量。
圖2 利用Session和Cookie購物車設(shè)計(jì)
本文提出了基于Session和Cookie設(shè)計(jì)與實(shí)現(xiàn)購物車的方法,用戶可以把購買商品的數(shù)據(jù)同時(shí)保存在服務(wù)器端和客戶端;同時(shí)購物車設(shè)計(jì)也體現(xiàn)了操作簡便、流程清晰等特點(diǎn)[4]。由于學(xué)校范圍內(nèi)的交易平臺(tái)訪問量有限,沒有考慮多并發(fā)情況下購物車的設(shè)計(jì),下一步的研發(fā)工作要考慮訪問壓力非常大、查詢量非常大、并發(fā)量比較高的情況,需要數(shù)據(jù)庫存儲(chǔ)購物車信息,使其數(shù)據(jù)呈現(xiàn)持久態(tài)。
[1]潘建建,管群.基于會(huì)話狀態(tài)的購物車系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012(11):43-46.
[2]張志剛.購物車技術(shù)研究及改進(jìn)方法[J].計(jì)算機(jī)應(yīng)用與軟件,2010(3):68-70.
[3]李愛國.基于Cookie的購物車設(shè)計(jì)與實(shí)現(xiàn)[J].信息技術(shù),2013(6):60-62.
[4]印德彬.基于.NET電子商務(wù)系統(tǒng)的購物車設(shè)計(jì)[J].河北軟件職業(yè)技術(shù)學(xué)院學(xué)報(bào),2015(2):4-5.
Design and Implementation of Shopping Cart based on Campus E-commerce Platform
JIA Feng
(Guangdong Polytechnic Institute,Guangzhou 510091, China)
According to the scale of the campus e-commerce system,it implements a shopping cart by Session and Cookie.Cart object is stored in the session,and the needs are put into the list collection.Shopping cart information is changed into string(such as good ID and quantity)which is saved in hard disks.
shopping cart;session;cookie;jsp
T9311.52
A
1673-2022(2017)02-0063-02
2017-03-04
賈峰(1981-),男,山西大同人,講師,碩士,研究方向?yàn)檐浖こ獭?/p>
河北軟件職業(yè)技術(shù)學(xué)院學(xué)報(bào)2017年2期