摘 要:根據(jù)四川文理學(xué)院校內(nèi)購物實(shí)際需求分析,結(jié)合現(xiàn)階段高校校內(nèi)在線購物平臺的調(diào)查研究,設(shè)計(jì)開發(fā)ZeroClothing購物平臺,整合了傳統(tǒng)的“跳蚤市場”功能。使用MVC構(gòu)架在實(shí)現(xiàn)系統(tǒng)交互、抽取數(shù)據(jù)、響應(yīng)請求等方面展示出了較好的性能,體現(xiàn)出系統(tǒng)具有良好地?cái)U(kuò)展性、維護(hù)性和移植性等特點(diǎn)。
關(guān)鍵詞:MVC;軟件工程;購物平臺;設(shè)計(jì)與實(shí)現(xiàn)
中圖分類號:TP393.18
現(xiàn)今電子商務(wù)為大眾的生活提供了極大的便利,由電子商務(wù)衍生而來的新消費(fèi)模式—網(wǎng)上購物也逐漸成為了流行趨勢,成為一種常態(tài)。但是將消費(fèi)人群針對高校學(xué)生的這一網(wǎng)上購物平臺還未完全發(fā)展成熟,特別是將傳統(tǒng)的“跳蚤市場”移動到購物平臺上來,這在高校內(nèi),也只是處于一個(gè)起步階段。本文就在此背景下,采用J2EE平臺和MVC設(shè)計(jì)模式來開發(fā)一個(gè)校內(nèi)的購物平臺。
1 系統(tǒng)需求分析
該系統(tǒng)分前臺和后臺。設(shè)計(jì)了三種權(quán)限:游客、會員、管理員?,F(xiàn)分別對功能進(jìn)行分析。前臺模塊需求分析:該部分主要用于網(wǎng)站的展示以及用戶體驗(yàn),包含11個(gè)功能模塊。各功能模塊的具體需求為:(1)會員注冊:通過會員注冊來獲得更多的操作權(quán)限,在用戶注冊完成后,系統(tǒng)會向注冊用戶填寫的郵箱地址發(fā)送帳號信息;(2)會員登錄;(3)商品瀏覽:進(jìn)入網(wǎng)站,通過網(wǎng)頁瀏覽網(wǎng)站內(nèi)的商品,如排序方式顯示商品列表;(4)商品搜索:通過關(guān)鍵字搜索需要的商品;(5)商品詳細(xì)信息:通過該模塊,能夠查看商品的詳細(xì)信息以及其它用戶對該商品的評論;(6)商品購買:用戶在登錄狀態(tài)下點(diǎn)擊“立即購買”按鈕,填寫收貨地址后,跳轉(zhuǎn)到所選擇的銀行進(jìn)行付款;(7)加入購物車:在登錄狀態(tài)下通過“加入購物車”按鈕將所選擇好的商品加入到購物車?yán)?;?)我的購物車:用戶可以通過該模塊查看已經(jīng)加入到購物車中但還未購買的商品,可以進(jìn)行一次性結(jié)算購買購物車中的商品;(9)商品評論:購買該商品后,對已購買的商品進(jìn)行評論,以便給其他想購買該商品的用戶提供相應(yīng)的參照信息;(10)已買到的寶貝:用戶可以查看已經(jīng)購買過的商品;(11)個(gè)人資料:用于查看、修改相關(guān)資料;(12)收貨地址:用于用戶管理用戶的收貨地址;(13)個(gè)人動態(tài):用戶登錄后,可以查看、發(fā)表心情;(14)我的喜歡:用于查看自己已標(biāo)注的商品的列表;(15)我的評價(jià):用于查看自己對某些已購買的商品的評價(jià)信息;(16)待付款:用于查看自己已經(jīng)生成訂單,但還未付款的列表,還可以對未付款的商品進(jìn)行付款購買;(17)客服中心:用戶在該模塊中打開客服人員的qq窗口與客服人員交流。
后臺管理各功能模塊需求分析:主要用于網(wǎng)站管理人員對網(wǎng)站數(shù)據(jù)進(jìn)行管理、維護(hù),通常向網(wǎng)站中添加商品信息及發(fā)布相關(guān)消息,有7個(gè)功能模塊。(1)后臺登錄:網(wǎng)站管理員登錄到后臺管理頁面對網(wǎng)站進(jìn)行管理;(2)商品管理:管理員對商品信息的管理,如發(fā)布商品信息和增加新商品,對商品的信息進(jìn)行CURD等操作;(3)會員管理:對會員的信息進(jìn)行審核,實(shí)現(xiàn)CURD等操作;(4)客服管理:對客服人員信息進(jìn)行CURD等操作;(5)業(yè)績報(bào)表:通過該模塊查看某一時(shí)間內(nèi)商品銷量排名,銷量百分比等數(shù)據(jù);(6)回收站:查看管理員已刪除的信息,在需要時(shí)可將其還原;(7)搜索:通過關(guān)鍵字來查找要搜索的信息。
2 系統(tǒng)總體設(shè)計(jì)
2.1 系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)
本系統(tǒng)采用MVC(Model View Controller)設(shè)計(jì)模式[1],即由業(yè)務(wù)模型層、視圖層、控制層組成。業(yè)務(wù)模型層是由數(shù)據(jù)表中的結(jié)構(gòu)轉(zhuǎn)換而來生成相應(yīng)的類的一層;視圖層是界面,直接與用戶進(jìn)行交互;控制層是調(diào)用相應(yīng)的方法處理由頁面?zhèn)鬟f過來的數(shù)據(jù)并進(jìn)行相關(guān)的業(yè)務(wù)邏輯處理。運(yùn)行過程如下:視圖層將與用戶進(jìn)行交互得到的數(shù)據(jù)傳遞到控制層,控制層調(diào)用后臺的方法對傳遞過來的數(shù)據(jù)進(jìn)行處理,再傳遞到視圖層來顯示。系統(tǒng)體系結(jié)構(gòu)如圖1所示。[2]
圖1 系統(tǒng)體系結(jié)構(gòu)
本系統(tǒng)用jsp頁面做視圖層,實(shí)現(xiàn)與用戶的交互處理;控制層由Servlet來對數(shù)據(jù)進(jìn)行處理;業(yè)務(wù)模型層使用JavaBean對數(shù)據(jù)表的結(jié)構(gòu)進(jìn)行封裝。使用Java語言編寫腳本。開發(fā)工具采用MyEclipes 8.5,應(yīng)用服務(wù)器Tomcat 6.0,數(shù)據(jù)庫是MySql 5.0數(shù)據(jù)庫。
2.2 數(shù)據(jù)對象及業(yè)務(wù)邏輯設(shè)計(jì)
2.2.1 本系統(tǒng)所涉及的研究對象有管理員、商品、會員定單等。建立對應(yīng)的表來進(jìn)行對象信息的存儲。本系統(tǒng)的數(shù)據(jù)庫中涉及的表有管理員表、商品評論表、商品表、商品類型表、會員表、訂單表、客服表、購物車表等。
2.2.2 本系統(tǒng)中前臺交互需要實(shí)現(xiàn)的業(yè)務(wù)邏輯有:會員信息查詢、會員信息插入、會員信息管理、商品信息查詢、商品信息搜索、訂單信息查詢、訂單信息插入、購物車信息查詢、購物車信息插入、前臺用戶的權(quán)限設(shè)置等;后臺管理需要實(shí)現(xiàn)的業(yè)務(wù)邏輯有:管理員信息查詢、會員信息管理、商品信息查詢、商品信息發(fā)布、商品信息管理、客服人員信息查詢、客服人員信息管理、數(shù)據(jù)搜索等。
2.3 二手市場業(yè)務(wù)邏輯設(shè)計(jì)
設(shè)計(jì)主要思想如下:當(dāng)一名學(xué)生向網(wǎng)站負(fù)責(zé)人或者專門負(fù)責(zé)二手市場管理的人員提出申請后,負(fù)責(zé)人員將對該學(xué)生提出的申請進(jìn)行審核,審核通過后,負(fù)責(zé)人員才會將商品的信息以及申請人的詳細(xì)信息提交到網(wǎng)站管理員,由網(wǎng)站管理員將商品的信息發(fā)布到網(wǎng)站上。同時(shí),在負(fù)責(zé)人那里會有一個(gè)對該申請人的不良信息記錄表,主要記錄是否有對該申請人的投訴,以方便對二手市場的管理,防止出現(xiàn)售賣假商品信息或者出現(xiàn)付款不發(fā)貨的情況出現(xiàn)。當(dāng)投訴達(dá)到一定數(shù)量的時(shí)候網(wǎng)站管理員將會將給申請人的相關(guān)商品信息停止發(fā)布,并且負(fù)責(zé)人將不再接受該申請人以后的商品售賣申請。
3 系統(tǒng)的詳細(xì)設(shè)計(jì)
3.1 系統(tǒng)功能結(jié)構(gòu)
根據(jù)平臺的需求分析和系統(tǒng)執(zhí)行業(yè)務(wù)邏輯流程研究,確定本系統(tǒng)的功能結(jié)構(gòu)如圖2所示。
圖2 系統(tǒng)功能結(jié)構(gòu)圖
3.2 系統(tǒng)主要功能模塊設(shè)計(jì)
3.2.1 用戶注冊。在注冊信息中,用戶所填寫的登錄密碼將通過MD5的加密方式,利用MD5的加密算法將填寫的密碼進(jìn)行變換,轉(zhuǎn)換成加密后的字符串,這樣有效地提高了用戶帳號的安全性。
3.2.2 登錄。通過登錄輸入密碼后,將密碼通過setString32MD5()方法得到使用MD5算法加密后的密碼字符串,然后再通過后臺的驗(yàn)證方法在數(shù)據(jù)庫中對用戶輸入的用戶名和密碼進(jìn)行驗(yàn)證,確認(rèn)用戶是否登陸。
3.2.3 個(gè)人中心。個(gè)人資料頁面中將使用EL表達(dá)式將用戶的信息顯示出來。當(dāng)用戶修改自己的資料時(shí),使用ID從數(shù)據(jù)庫中找到用戶的記錄進(jìn)行修改。
3.2.4 商品購買。商品購買需要在用戶已經(jīng)登錄的情況下才能進(jìn)行使用。在購買時(shí)將用戶ID、商品ID、訂單號存入數(shù)據(jù)庫中,并且跳轉(zhuǎn)到選擇的付款銀行的付款頁面進(jìn)行付款。效果如圖3所示:
3.2.5 搜索。將關(guān)鍵字輸入到搜索框中,在數(shù)據(jù)庫中搜索含有關(guān)鍵字的記錄,將搜索結(jié)果返回到頁面顯示給用戶或者管理員。
3.2.6 郵件發(fā)送。本系統(tǒng)中的郵件發(fā)送是通過第三方郵件操作組件Jmail來實(shí)現(xiàn)的,在Jmail中使用組件的put()方法設(shè)置第三方的郵件服務(wù)器,通過setFrom()方法設(shè)置郵件發(fā)送方,通過setRecipient()方法設(shè)置郵件接受方,通過setContent()方法來設(shè)置郵件的內(nèi)容,最后通過send()方法將郵件發(fā)送出去。在本系統(tǒng)中,所使用的第三方郵件服務(wù)器為網(wǎng)易的郵件服務(wù)器。
3.2.7 后臺管理。管理員登錄后,對商品、會員、客服進(jìn)行管理時(shí),均是從數(shù)據(jù)庫中取出相應(yīng)的數(shù)據(jù),在傳到頁面進(jìn)行顯示。在管理員對數(shù)據(jù)進(jìn)行CURD操作時(shí),將所要操作記錄的ID傳到相應(yīng)的servlet中,調(diào)用對應(yīng)的方法來進(jìn)行CURD操作。
4 結(jié)束語
本系統(tǒng)采用的是JavaBean+Jsp+Servlet的方式,代碼層次分明,將后臺操作的代碼與視圖設(shè)計(jì)的代碼分離。同時(shí)采用的J2EE的平臺,可移植性高。因使用MVC設(shè)計(jì)模式,沒有使用框架,在代碼量上會偏大。本平臺是將平常的購物網(wǎng)站針對高校學(xué)生的需求功能設(shè)計(jì)出了一個(gè)適用于高校學(xué)生的購網(wǎng)平臺。
參考文獻(xiàn):
[1]郭克華,宋虹.Java Web開發(fā)與應(yīng)用[M].北京:清華大學(xué)出版社,2013(04).
[2]伍海波,匡靜,朱承學(xué).楊基于MVC的教學(xué)資源管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2014(07).
[3]孫昌愛,趙敏,何嘯.一種面向Web服務(wù)的綜合可信性度量模型[J].北京科技大學(xué)學(xué)報(bào),2014(04).
[4]許家珆,白忠建,吳磊.軟件工程—理論與實(shí)踐(第二版)[M].北京:高等教育出版社,2009(10).
作者簡介:賀建英(1979-),女,四川簡陽人,講師,碩士,研究方向:軟件技術(shù)、數(shù)據(jù)挖掘、物聯(lián)網(wǎng);蔡云(1992-),男,四川什邡人,本科在讀,研究方向:計(jì)算機(jī)軟件技術(shù)。
作者單位:四川文理學(xué)院 計(jì)算機(jī)學(xué)院,四川達(dá)州 635000
基金項(xiàng)目:四川文理學(xué)院大學(xué)生項(xiàng)目:基于校園網(wǎng)的ZeroClothing購物平臺的設(shè)計(jì)與搭建(項(xiàng)目編號:X2013Z013)。