周云峰
(廣州現(xiàn)代信息工程職業(yè)技術(shù)學(xué)院,廣東 廣州 510663)
基于Java的在線電子商務(wù)網(wǎng)站設(shè)計(jì)與實(shí)現(xiàn)
周云峰
(廣州現(xiàn)代信息工程職業(yè)技術(shù)學(xué)院,廣東 廣州 510663)
文章闡述了如何應(yīng)用Spring框架和MVC模式設(shè)計(jì)在線電子商務(wù)網(wǎng)站系統(tǒng)。該系統(tǒng)是基于Java開發(fā)語言,以Mysql為數(shù)據(jù)庫,以Tomcat,nginx為Web服務(wù)器開發(fā)并實(shí)現(xiàn)的。
在線電子商務(wù);網(wǎng)頁靜態(tài)化;用戶行為推薦;負(fù)載均衡;MVC
近年來,我國電子商務(wù)行業(yè)發(fā)展迅猛,產(chǎn)業(yè)規(guī)模不斷擴(kuò)大,加上國家政策的扶持,電子商務(wù)已成為人們購物的首要方式,大大節(jié)省了人們寶貴的時(shí)間。電子商務(wù)的發(fā)展將線下零售線上化。本文遵循軟件開發(fā)思想,設(shè)計(jì)了一套在線電子商務(wù)系統(tǒng)。
本網(wǎng)站是以Java語言開發(fā)、采用spring MVC架構(gòu)、mybatis數(shù)據(jù)庫持久層、mysql數(shù)據(jù)庫、以Tomcat作為Web服務(wù)器、nginx作為反向代理服務(wù)器(解析靜態(tài)文件,減輕Tomcat壓力)設(shè)計(jì)而成的。網(wǎng)站的主要功能分為會員管理、商品管理、購物車、訂單管理、管理員模塊、評論管理、商品推薦等幾類。
1.1會員模塊
系統(tǒng)提供注冊登錄功能,用戶可注冊為本網(wǎng)站的會員。通過手機(jī)發(fā)送驗(yàn)證碼、發(fā)送郵件激活的方式進(jìn)行注冊,這種方式可以防止虛假惡意注冊。
1.2商品模塊
商品的展示是購物平臺很重要的一部分,需要把網(wǎng)站最核心的東西展示給目標(biāo)用戶。用戶可以按商品分類和商品名稱進(jìn)行搜索,并提供熱門商品搜索功能。同類商品中用戶評價(jià)高的商品會排在前面,供買家購物時(shí)參考。
1.3購物車模塊
用戶看到合適的商品,核對尺碼、顏色、數(shù)量后把商品放入購物車,后期查看即可對自己購物車中的商品信息一目了然,并且用戶在核對清楚后點(diǎn)擊結(jié)算,就形成了訂單。
通過COOKIE+DB的方式對J2EE的B2C系統(tǒng)存放購物車。存放購物車的方式有兩種:一種是通過Session來存放,使用session.put(key,value)。另一種是通過COOKIE+DB的方式存放。相對而言,前者比較容易實(shí)現(xiàn),但會消耗更多的服務(wù)器內(nèi)存。
首先,每個(gè)用戶初次訪問此網(wǎng)站時(shí),需要為用戶分配一個(gè)唯一ID(UUID),存放在COOKIE里面。這個(gè)功能可以通過過濾器來實(shí)現(xiàn)。判斷用戶cookie里面是否存在ID,不存在就創(chuàng)建。
然后,從數(shù)據(jù)庫獲取購物車,如果數(shù)據(jù)庫中不存在記錄,代表用戶初次購買,這時(shí)新建購物車,往購物車中添加購物項(xiàng)。添加完購物項(xiàng)后把整個(gè)購物車(實(shí)現(xiàn)序列化對象)保存到數(shù)據(jù)庫。
將購物車保存到數(shù)據(jù)庫的時(shí)候還要保存用戶ID和訪問時(shí)間。可以設(shè)定一個(gè)定時(shí)器,如果訪問時(shí)間過期了,就將對應(yīng)的記錄刪除。
1.4訂單管理模塊
用戶把選好的商品放入購物車后,確認(rèn)商品信息無誤,結(jié)算生成商品訂單,點(diǎn)擊訂單可查看商品的總價(jià)、運(yùn)費(fèi)、訂單總價(jià)、創(chuàng)建時(shí)間、成交時(shí)間等訂單信息,用戶也可以刪除訂單。交易完成后對商品進(jìn)行評價(jià)。
1.5管理員模塊
管理員可以對注冊用戶進(jìn)行管理,統(tǒng)計(jì)用戶注冊信息,統(tǒng)計(jì)用戶的購買信息,也可以對不合格的用戶作刪除注銷處理。
1.6評論管理模塊
用戶購買商品后可以對購買的商品進(jìn)行評價(jià),商家可以對用戶的評價(jià)進(jìn)行回復(fù)。
1.7商品推薦模塊
基于用戶購買商品的信息,進(jìn)行統(tǒng)計(jì)分析,分析用戶的購買習(xí)慣,個(gè)性化推薦一些用戶可能感興趣的商品。
本系統(tǒng)采用的是Spring框架,數(shù)據(jù)庫持久層框架采用mybatis,頁面采用標(biāo)簽Velocity進(jìn)行頁面靜態(tài)化。
網(wǎng)站的整體架構(gòu)設(shè)計(jì)流程如圖1所示:
電商網(wǎng)站一般用戶訪問量大,本系統(tǒng)采用tomcat集群,nginx+tomcat負(fù)載均衡,mysql數(shù)據(jù)庫進(jìn)行讀寫分離,應(yīng)對訪問量大的并發(fā)性問題。
2.1MVC設(shè)計(jì)模式
MVC的具體含義是:model+view+control,即模型+視圖+控制,它們各自處理自己的任務(wù)。而Spring就是典型的MVC架構(gòu)。MVC設(shè)計(jì)模式有以下幾個(gè)特點(diǎn):
(1)易于工程化管理。
(2)易于維護(hù)。
(3)降低層與層之間的依賴。
圖1 網(wǎng)站的整體架構(gòu)設(shè)計(jì)流程
2.2電子商務(wù)網(wǎng)站的實(shí)現(xiàn)
(1)會員注冊模塊:新用戶在注冊界面填寫基本信息。注冊模塊采用手機(jī)驗(yàn)證碼加郵箱驗(yàn)證進(jìn)行校驗(yàn),避免惡意注冊。
(2)會員管理模塊:會員管理設(shè)計(jì),根據(jù)用戶購買金額劃分為金牌會員、銀牌會員、銅牌會員。不同的會員級別購買商品優(yōu)惠不同。
(3)商品瀏覽模塊:用戶瀏覽商品信息,可以對商品進(jìn)行搜索,找感興趣的商品。利用Cookie來實(shí)現(xiàn)顯示商品瀏覽歷史記錄。用戶每點(diǎn)擊查看一個(gè)商品,就記錄該用戶查看的商品ID、查看時(shí)間。根據(jù)瀏覽的商品,系統(tǒng)可以根據(jù)用戶的瀏覽記錄推薦相關(guān)的商品。
(4)購物車模塊:主要實(shí)現(xiàn)的是修改商品的數(shù)量,刪除商品等操作。
(5)訂單模塊:用戶購買商品后結(jié)算提交,選擇送貨方式、付款方式。系統(tǒng)生成一個(gè)訂單號,表示訂單生效了。
(6)熱門商品:根據(jù)用戶瀏覽的商品記錄,記錄商品的點(diǎn)擊量。商品點(diǎn)擊量多的排在最前面。管理員可以根據(jù)商品的點(diǎn)擊量和購買量評出熱門商品。
(7)管理員模塊:管理員可以對會員進(jìn)行統(tǒng)計(jì)管理,統(tǒng)計(jì)注冊用戶數(shù),商品每天的成交額,總的成交額,商品的上架、下架處理。
(8)權(quán)限管理:后臺超級管理員可以分配管理員權(quán)限,進(jìn)行分級管理,管理員可以對商品進(jìn)行上架編輯和下架處理。
[1]梁麗.基于Java的網(wǎng)上書店系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)與軟件工程,2013(23):218.
[2]李剛.輕量級J2EE企業(yè)應(yīng)用實(shí)戰(zhàn)—Struts+Spring+Hibernate整合開發(fā)[M].北京:電子工業(yè)出版社,2007.
The Design and Implementation of Online E-commerce Website Based on Java
Zhou Yunfeng
(Guangzhou Modern Information Engineering Vocational and Technical College, Guangzhou 510663, China)
This paper describes how to use the Spring framework and MVC model to design a online e-commerce website system. The system is developed and implemented based on the Java development language, with Mysql as the database, Tomcat and nginx as the Web server.
online e-commerce; Web page static; user behavior recommendation; load balance; MVC
周云峰(1980-),男,湖南祁東,工程師;研究方向:計(jì)算機(jī)網(wǎng)絡(luò)。