網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁
網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁
網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁
網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 管 理 信 息 系 統(tǒng) 論姓名:張攀登學(xué)號:201046900314班級:電子商務(wù)1001學(xué)院:管理學(xué)院成績:網(wǎng)上購物系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)第一章:緒論1.1系統(tǒng)開發(fā)原因u 的迅速崛起5,互近年來,隨著Internet聯(lián)網(wǎng)已日益成為收集提供信息的最佳渠道并逐步進(jìn)入傳統(tǒng)的流通領(lǐng)域。于是電子商務(wù)開始流行起來,越來越多的商家在網(wǎng)上建起在線商店,向消費(fèi)者展示出一種新穎的購物理念。據(jù)有關(guān)資料顯示,網(wǎng)上購物越來愈受歡迎,在中國迅速發(fā)展,現(xiàn)僅拿淘寶網(wǎng)的一些數(shù)據(jù)為例來做說明:據(jù)統(tǒng)計(jì)2010年淘寶網(wǎng)平均每分鐘售出4.8萬件商品,其中包括864件衣服,36部手機(jī)、880件化妝品、85本書、53包紙尿褲、13件燈具。下

2、面是2008-2014中國網(wǎng)絡(luò)購物市場規(guī)模的變化下面是2010年中國網(wǎng)絡(luò)購物交易的市場份額,可以看出網(wǎng)上購物在中國的發(fā)展非常迅速1.2 系統(tǒng)實(shí)現(xiàn)的目標(biāo)現(xiàn)在流行的網(wǎng)上購物系統(tǒng)不僅要有漂亮的網(wǎng)頁,更要有嚴(yán)謹(jǐn)?shù)囊?guī)劃,注重每一個(gè)細(xì)小的環(huán)節(jié)。這樣才能使得在電子交易時(shí)避免不必要錯(cuò)誤發(fā)生。我們將使用HTML、JSP等技術(shù)來編輯網(wǎng)頁,并運(yùn)用JDBC技術(shù)把數(shù)據(jù)庫和動態(tài)網(wǎng)頁相關(guān)聯(lián)。傳統(tǒng)的管理信息系統(tǒng)信息獲取方法是由專業(yè)文字錄入人員將信息輸入到管理系統(tǒng)的數(shù)據(jù)庫中,這種方法在數(shù)據(jù)量不大時(shí)有很多的應(yīng)用場合。當(dāng)數(shù)據(jù)量比較大,并且有較強(qiáng)的專業(yè)性時(shí),錄入的費(fèi)用和出錯(cuò)的可能性都相應(yīng)上升。本設(shè)計(jì)在實(shí)際應(yīng)用中的解決方案是建立網(wǎng)站,

3、 以及自己的數(shù)據(jù)庫,使得所需商品信息可以及時(shí)的保存、更新,可以更好的及時(shí)了解商品買賣的情況1.3系統(tǒng)的開發(fā)意義Internet的發(fā)展,為改變傳統(tǒng)的商業(yè)運(yùn)作模式提供了一種技術(shù)上的可行性的方案:利用Internet的技術(shù)和協(xié)議,建立各種企業(yè)內(nèi)部網(wǎng)Intranet,企業(yè)外部網(wǎng)Extranet,通過廉價(jià)的通訊手段,將買家與賣家、廠商和合作伙伴緊密結(jié)合在了一起,消除時(shí)間與空間帶來的障礙,從而大大的節(jié)約了交易成本,擴(kuò)大了交易范圍。而在實(shí)際的生活中,這種方案已經(jīng)被廣泛的運(yùn)用到了實(shí)際的商業(yè)活動中了,人們將這種交易模式稱為:電子商務(wù)。 當(dāng)今比較流行的網(wǎng)上購物系統(tǒng)有“淘寶()”,“當(dāng)當(dāng)

4、()”。它們都是相當(dāng)優(yōu)秀的電子商務(wù)網(wǎng)站,對其他的網(wǎng)站提供了良好的典范。設(shè)計(jì)中可以學(xué)習(xí)參考他們的思想,了解和熟悉整個(gè)網(wǎng)站的開發(fā)流程及完整的電子商務(wù)網(wǎng)站應(yīng)有的功能和注意事項(xiàng)。 設(shè)計(jì)和完成一個(gè)電子商務(wù)網(wǎng)站的,將會牽涉到許多技術(shù)上的問題,如:動態(tài)網(wǎng)頁制作技術(shù)的,后臺數(shù)據(jù)庫的設(shè)計(jì)和管理,通過實(shí)際的制作個(gè)網(wǎng)站,可以避免紙上談兵,在實(shí)踐中掌握上述技術(shù)的使用。第二章 網(wǎng)上購物系統(tǒng)2.1 網(wǎng)上購物系統(tǒng)分析系統(tǒng)分析是平臺開發(fā)的一個(gè)不可缺少的環(huán)節(jié),為了能夠使本系統(tǒng)更好、更完善地被設(shè)計(jì)出來,就必須先進(jìn)行調(diào)查研究。在系統(tǒng)調(diào)查的基礎(chǔ)上,對新系統(tǒng)的功能進(jìn)行細(xì)致的分析,從而才能夠開發(fā)出完整的系

5、統(tǒng)設(shè)計(jì)。2.2網(wǎng)站的設(shè)計(jì)目標(biāo)本購物系統(tǒng)由于需要演示程序,故為了演示方便,采用JSP4+Access數(shù)據(jù)庫的架構(gòu)實(shí)現(xiàn)的,此系統(tǒng)分為前臺管理和后臺管理。前臺管理是友好的操作界面,供用戶瀏覽、查詢使用。包括:瀏覽商品、查詢商品、訂購商品、購物車、用戶維護(hù)等功能;后臺管理是提供給管理員的,其中包括:商品管理、用戶管理、網(wǎng)站信息管理、和廣告友情鏈接等。使管理員從繁瑣的手工操作中解脫出來,并提高了辦公效率。2.3網(wǎng)站的可行性分析隨著計(jì)算機(jī)技術(shù)的發(fā)展和網(wǎng)絡(luò)人口的增加,網(wǎng)絡(luò)世界也越來越廣博,越來越豐富,電子商務(wù)已經(jīng)成為網(wǎng)上的一股潮流。我們相信要不了太長有時(shí)間,顧客就可以在網(wǎng)絡(luò)世界上獲得他們在現(xiàn)實(shí)世界上可以獲得

6、的所有商品和服務(wù)??尚行匝芯渴菫榱伺宄到y(tǒng)開發(fā)的項(xiàng)目是不是可以實(shí)現(xiàn)和值得進(jìn)行研究的過程,實(shí)際上是一次大大簡化系統(tǒng)分析和系統(tǒng)設(shè)計(jì)的過程,所以,進(jìn)行可執(zhí)行性的分析是非常必要的,也是很重要的,經(jīng)過最初的設(shè)計(jì)目標(biāo)和進(jìn)行的市場調(diào)查得出以下四點(diǎn)的可行性分析:(1)經(jīng)濟(jì)可行性:該平臺設(shè)計(jì)只是作為本人的畢業(yè)設(shè)計(jì),又因?yàn)楸救说脑O(shè)計(jì)能力有限,其功能還不能完善,所以沒有什么經(jīng)濟(jì)效益可談。(2)技術(shù)可行性:JSPServlet的技術(shù)已經(jīng)較為成熟。(3)運(yùn)行可行性:該系統(tǒng)需要搭建JVM即JAVA虛擬機(jī)和Tomcat環(huán)境,在此環(huán)境下系統(tǒng),并且在正確連接數(shù)據(jù)庫后可以正常運(yùn)行。(4)法律可行性:該平臺是作為畢業(yè)設(shè)計(jì)與商業(yè)無

7、關(guān),又因?yàn)槭亲灾鏖_發(fā)設(shè)計(jì),因此不會構(gòu)成侵權(quán),在法律上是可行的。通過以上的可行性分析,我將采用JSPServlet相結(jié)合的技術(shù)5,運(yùn)用Access數(shù)據(jù)庫對網(wǎng)站進(jìn)行建設(shè)。2.4網(wǎng)站的深入調(diào)查經(jīng)過以上的初步調(diào)查和研究,并且確定了該平臺的可行性,并決定開發(fā)本平臺,為了能夠?qū)ΜF(xiàn)行的平臺內(nèi)容進(jìn)行充分了解,使所要開發(fā)的平臺更具有實(shí)用性和適應(yīng)性,通過兩個(gè)月的實(shí)習(xí)調(diào)查和指導(dǎo)老師的耐心介紹,設(shè)計(jì)出該平臺功能如下:1. 能夠完成用戶基本信息錄入的注冊和用戶基本信息的個(gè)人前臺與后臺管理。2. 能夠完成管理員對網(wǎng)站的商品資料(商品添加、商品審查)會員管理(會員審查)、網(wǎng)站信息管理(新聞添加、修改刪除、公告設(shè)置),以及常

8、規(guī)設(shè)置(廣告添加,友情鏈接)的功能。3. 能過電子商品的名稱,電子商品的分類進(jìn)行搜索。4. 能夠通過查看購物車對所選商品進(jìn)行確定、挑選,通過定單查詢對支付費(fèi)用進(jìn)行確定。經(jīng)過前一階段的調(diào)查與研究分析,我已確定了該平臺設(shè)計(jì)的主要功能,對每個(gè)功能模塊也作了具體描述,下面就來具體分析該平臺的設(shè)計(jì)特點(diǎn)與具體思想。2.5網(wǎng)站設(shè)計(jì)的特點(diǎn)我所設(shè)計(jì)和開發(fā)的網(wǎng)上購物平臺是經(jīng)過很長時(shí)間的調(diào)查和分析才開始具體實(shí)施的,它的主要特點(diǎn)是改變了以往的購物只能過現(xiàn)實(shí)的商場才能達(dá)到的結(jié)果,采用Web技術(shù),借助于Internet互聯(lián)網(wǎng)廣泛應(yīng)用技術(shù),達(dá)到資源共享,提高以往購物的局限性,縮短人們的時(shí)間和提高工作效率,具有較好的交互性,

9、從而實(shí)現(xiàn)信息化,規(guī)范化,系統(tǒng)化,網(wǎng)絡(luò)化的平臺,使整個(gè)購物活動過程簡單、方便、易行。2.6網(wǎng)站開發(fā)的設(shè)計(jì)思想網(wǎng)上購物平臺主要是對后臺管理和前臺操作。后臺管理是管理員對本網(wǎng)站的維護(hù),通過商品資料(商品添加、商品修改)會員管理(會員審查)網(wǎng)站信息管理(新聞添加、修改刪除、公告設(shè)置),以及常規(guī)設(shè)置(廣告添加,友情鏈接)等功能達(dá)到對網(wǎng)站的管理。前臺操作是用戶登錄到本網(wǎng)站,可以進(jìn)行用戶注冊,通過網(wǎng)站的精品推薦或商品搜索功能,找到自己想要買的商品,裝入購物車,提交定單進(jìn)行購買。網(wǎng)上購物平臺的特點(diǎn)是客戶和電子商品信息量很大,管理員需要整理的信息很多,為讓管理員輕松、方便、快捷的管理,該平臺采用符合購買電子商品

10、基本的原則,滿足廣大客戶的日益增長的數(shù)量,并達(dá)到操作過程中的直觀、方便、實(shí)用、安全等要求。2.7系統(tǒng)設(shè)計(jì)的總體規(guī)則無論哪個(gè)網(wǎng)站都要有它自己的設(shè)計(jì)規(guī)則。該平臺也一樣,它的主要設(shè)計(jì)規(guī)則有:簡單性:在實(shí)現(xiàn)平臺的功能的同時(shí),盡量讓平臺操作簡單易懂,這對于一個(gè)網(wǎng)站來說是非常重要的。針對性:該平臺設(shè)計(jì)是網(wǎng)上購物系統(tǒng)及后臺管理的定向開發(fā)設(shè)計(jì),所以具有專業(yè)突出和很強(qiáng)的針對性。實(shí)用性:該平臺能完成電子商品展示和管理員管理的基本信息,具有良好的實(shí)用性。第三章:系統(tǒng)分析與設(shè)計(jì)3.1網(wǎng)站的功能分析經(jīng)過前期的深入調(diào)查和研究,總結(jié)出該平臺需要完成的一些具體功能,分析如下:用戶管理 能夠完成用戶基本信息錄入的注冊和用戶基本

11、信息的修改。管理員管理 能夠完成管理員對網(wǎng)站的商品信息管理(商品添加、商品審查)、會員管理(會員審查)、網(wǎng)站信息管理(新聞添加、修改刪除、公告設(shè)置),以及常規(guī)設(shè)置(廣告添加,友情鏈接)的功能。搜索功能 能過電子商品的名稱進(jìn)行搜索。查詢功能 能夠通過查看購物車對所選商品進(jìn)行確定、挑選。 3.2 平臺功能模塊的設(shè)計(jì)分析在平臺功能的分析基礎(chǔ)上,得到本平臺的功能模塊圖如圖3-1所示: 網(wǎng)上購物平臺index.jsp。商品修改用戶管理管理進(jìn)入新聞管理用戶注冊商品管理商品添加會員管理廣告鏈接修改新聞新聞添加廣告設(shè)置鏈接管理商品名稱用戶修改會員刪除商品搜索網(wǎng)站布局圖3-1 平臺購物模塊圖用戶進(jìn)入網(wǎng)上購物平臺

12、,用戶可以注冊,然后登錄后可以進(jìn)行修改資料,用戶可以通過商品搜索,找到自己想要產(chǎn)品。管理員可以通過后臺登錄進(jìn)去進(jìn)行會員管理,商品管理,新聞管理和廣告鏈接管理。在會員管理中,可以對會員就行添加刪除,在商品管理中可以對商品進(jìn)行添加修改,在廣告鏈接里面可以對廣告設(shè)置和友情鏈接進(jìn)行管理。3.3 系統(tǒng)流程分析3.3.1前臺購物流程 瀏覽商品選擇商品訂購商品去購物車去收銀臺提交訂單未注冊用戶已登錄注冊用戶未登錄注冊用戶注冊登錄圖3-2 前臺購物流程圖2用戶再前臺可以瀏覽商品,看到自己喜歡的商品可以選擇商品,然后訂購商品,這時(shí)需要進(jìn)行判斷,如果是沒有注冊的用戶,那么系統(tǒng)跳到注冊頁面,如果是注冊了沒有登錄的用

13、戶,則跳轉(zhuǎn)到登錄頁面,已經(jīng)登錄的用戶則跳轉(zhuǎn)到購物車頁面,然后去收銀臺結(jié)帳,然后提交訂單。3.3.2注冊功能流程 如圖3-3所示:注冊入口必選項(xiàng)為空用戶名有效?2次輸入密碼是否一致?密碼長度符合要求?Emai地址有效效?其他信息有效注冊成功圖3-3 注冊功能流程圖注冊的具體實(shí)現(xiàn)為:點(diǎn)擊主頁面的用戶注冊選項(xiàng)后,會彈出一個(gè)注冊信息頁面,用戶需要如實(shí)填寫用戶名,密碼,E_mail,地址,電話,真實(shí),姓名等各項(xiàng)信息,提交后,系統(tǒng)進(jìn)行檢測判斷該用戶名是否已經(jīng)注冊過,如果已經(jīng)存在則彈出新頁面,提示用戶該用戶名已經(jīng)注冊過,如果沒有則進(jìn)行下一步判斷,用戶輸入的兩次密碼是否一致,然后依次往后判斷用戶所填寫的各項(xiàng)信

14、息是否符合要求,直到所有信息均正確無誤,系統(tǒng)將該用戶注冊信息寫入會員表即member并提示用戶注冊成功,用戶登陸后,就可以進(jìn)行有效的購物了。3.3.3商品搜索流程 如圖3-4所示:開始搜索輸入條件搜索結(jié)果查看商品購物車下訂單續(xù)搜索是否圖3-4 商品搜索流程圖商品的搜索功能使用戶更加方便的進(jìn)行自己所需要的商品的查詢,節(jié)省時(shí)間,提高效率。用戶搜索時(shí)只要輸入商品的關(guān)鍵字就能搜索到所有相關(guān)的商品。并且能列出通過搜索得到的商品的詳細(xì)信息。3.3.4用戶登錄流程 登錄入口取得用戶名和密碼將UserID存入session中查詢用戶是否存在核對密碼是否正確登錄成功是是否否圖3-5 用戶登陸流程圖用戶登錄,首先

15、要有一個(gè)提供用戶登錄的表單。用戶登錄的表單應(yīng)該嵌入整體的結(jié)構(gòu)當(dāng)中。在實(shí)際的應(yīng)用中,可以這樣設(shè)計(jì),如果用戶沒有登錄,則在頁面中顯示用戶登錄的選項(xiàng),用戶登錄后,則可隱藏用戶登錄的選項(xiàng)而代之以用戶的基本信息。首先,用戶要有一個(gè)用戶名和密碼。商務(wù)網(wǎng)站需要很高的穩(wěn)定性和安全性,因此對用戶名不允許使用惡意的代碼作為用戶名。同時(shí)對密碼也要求保密,將密碼加密后再存入數(shù)據(jù)庫。另外,一個(gè)電子商務(wù)網(wǎng)站。用戶的真實(shí)姓名是必不可少的。除此之外還需要用戶的性別、E-MAIL、電話號碼等。3.3.5商品管理流程 商品管理查詢商品修改刪除滿意否返回添加商品是圖3-6 商品管理流程圖在該功能里管理員可以進(jìn)行不需要的商品的刪除,

16、在這里管理員當(dāng)然也可以瀏覽到商品的詳細(xì)信息。并且比普通用戶在瀏覽商品界面里所看到的商品信息多一個(gè)該商品在數(shù)據(jù)庫中的ID。3.3.6購物車流程 購物車具體的實(shí)現(xiàn)可采用這種形式:定義一個(gè)購物車的類(Class)。1.列出商品的列表,使用戶能夠自由選擇所需要的商品。2.當(dāng)用戶在點(diǎn)擊“添加到購物車”的鏈接時(shí),執(zhí)行如下功能:檢查用戶購物車類是否存在。如不存在,則建立,并注冊這Session變量;在有用戶購物車類存在的情況下,檢查該類中是否有該商品。如存在,則商品數(shù)量相應(yīng)加1;如沒有該商品,則將該商品添加到該類中。購物車查看商品滿意嗎下訂單調(diào)整商品是否 圖37 購物車流程圖3.4相關(guān)數(shù)據(jù)庫表設(shè)計(jì)3.4.1

17、 商品信息表字段字段名類型寬度小數(shù)位索引可否為空Sh_id商品編號自動編號是否Sh _name商品名稱文本型50否Sh _cash商品價(jià)格數(shù)值型182Sh _content商品信息備注型255Sh _pic商品圖片文本型255Sh _buys商品數(shù)量數(shù)值型18Sh _date商品日期日期型3.4.2 會員信息表member字段字段名類型寬度小數(shù)位索引可否為空User_id會員編號自動編號是User_name會員帳號文本型50否User_pass會員密碼文本型50否User_adds會員地址文本型255User_mail會員E_Mail文本型50User_tel會員電話文本型50User_reg

18、time注冊時(shí)間日期型User_postcode郵政編碼文本型50User_namec會員姓名文本型503.4.3購物車表basket字段字段名類型寬度小數(shù)位索引可否為空Basket_id購物車編號自動編號是否Sh_id商品編號自動編號是否User_name會員帳號文本型50否Basket_count商品數(shù)量數(shù)值型18Basket_date購物時(shí)間日期型Basket_check是否結(jié)帳是/否Sh_name商品名稱文本型50Sh_cash商品價(jià)格數(shù)值型182Sub_number訂單編號文本型50是3.4.4管理員表admin字段字段名類型寬度小數(shù)位索引可否為空Admin_id管理員編號自動編號是

19、Admin_name管理員帳號文本型50Admin_pass管理員密碼文本型50 第四章 系統(tǒng)實(shí)現(xiàn)4.1 目錄結(jié)構(gòu)說明(1) admin 用于存儲系統(tǒng)管理員的后臺操作腳本,包括商品類別管理、商品信息管理、站內(nèi)公告管理、訂單管理、系統(tǒng)用戶管理等功能;(2) pic 用來存儲商品的圖片資料,管理員上傳的商品圖片也存在這里。(3) img 用來存儲網(wǎng)頁上的圖片文件。(4) database 用來存儲系統(tǒng)的數(shù)據(jù)庫。(5) Class 用來存儲封裝起來的一些servelet,也可稱為JavaBean文件。4.2 功能頁面結(jié)構(gòu)(1)前臺功能頁面主頁面框架:index.jsp,top.jsp,in-sear

20、ch.jsp,includenotice.jsp,paihang.jsp,middle.jsp商品展示:bought.jsp,cash.jsp,showing.jsp,views.jsp,inproduct.jsp 登陸注冊:dengluyufou.jsp reg.jsp,regsave.jsp,quit.jsp(2)后臺管理頁面主頁面框架:index.jsp,manage.jsp,left.jsp,main.html,quit.jsp商品管理:addhw.jsp,changehw.jsp,changehw_ok.jsp,savehw.jsp,delhw.jsp用戶管理:viewuser.js

21、p公告管理:gg.jsp,gg2.jsp,ggdel.jsp4.3 主要功能流程 主頁面index.jsp。商品修改用戶登陸注冊管理進(jìn)入添加到購物車新聞管理資料修改商品管理商品添加會員管理廣告鏈接新聞修改新聞添加廣告設(shè)置鏈接管理是否會員退出返回搜索物品選購物品結(jié)帳付款填寫訂貨單購物成功會員刪除退出圖41 主要功能流程圖用戶根據(jù)圖示完成網(wǎng)上購物的基本流程,在前面已經(jīng)詳細(xì)說過。4.4各功能模塊的實(shí)現(xiàn)4.4.1數(shù)據(jù)庫的連接出于安全性的考慮,我們將與數(shù)據(jù)庫的連接,單獨(dú)寫出來并進(jìn)行編譯,也就是數(shù)據(jù)庫連接的javabean文件6,編譯出來的.class文件是無法被修改的只能通過源文件進(jìn)行修改,我們在JSP

22、頁面中只用直接調(diào)用改方法即可,在本系統(tǒng)中我們將其命名為為.faq存放在class/ckstudio/db下設(shè)其id為mdb,我們在需要對數(shù)據(jù)庫進(jìn)行操作的時(shí)候只需在頁面上添加這樣一個(gè)標(biāo)簽即可。連接關(guān)鍵代碼如下:Stringurl=jdbc:odbc:driver=MicrosoftAccessDriver(*.mdb);DBQ=+strDirPath+db.mdb;定義連接地址Connectionconn=DriverManager.getConnection(url);連接數(shù)據(jù)庫4.4.2用戶登陸模塊的實(shí)現(xiàn)用戶登陸模塊是防止非法用戶登陸的第一道防線,通過它可以保護(hù)后臺數(shù)據(jù)庫的安全性,當(dāng)用戶要進(jìn)

23、行定購時(shí),首先要進(jìn)入的就是身份驗(yàn)證界面,只有在密碼正確的情況下才能進(jìn)行以后的購物,如果輸入的密碼不正確,則不能進(jìn)行定購。如果用戶以瀏覽者的身份進(jìn)入網(wǎng)站,則只能進(jìn)行一般的商品瀏覽和搜索,而不能進(jìn)行選購,在點(diǎn)擊添加購物車后,系統(tǒng)會判斷該用戶是否是登陸用戶,如果不是則彈出提示頁面,提示用戶必須先登陸才能定購商品,如果是第一次登陸,請先注冊。主頁面的效果圖如下圖4-2所示: 圖4-2 主頁面示意圖如果用戶還不是會員則提示用戶進(jìn)行注冊,用戶提交信息之后,系統(tǒng)開始判斷用戶的注冊信息是否有效,首先是用戶名是否為空,(該處存在用戶名命名規(guī)則的問題,后面問題中會詳細(xì)解決)用戶輸入的兩次密碼是否一致,然后依次往后

24、判斷用戶所填寫的各項(xiàng)信息是否符合要求,直到所有信息均正確無誤,系統(tǒng)將該用戶注冊信息寫入會員表即member并提示用戶注冊成功,用戶登陸后,就可以進(jìn)行有效的購物了。注冊頁面的效果圖如下圖4-3所示:圖4-3注冊頁面示意圖系統(tǒng)對用戶的注冊信息的驗(yàn)證實(shí)現(xiàn)如下:用戶輸入的各項(xiàng)信息分別對應(yīng)字段先判斷用戶名是否為空,然后對密碼進(jìn)行判斷,判斷兩次輸入是否一致以及用戶名是否重復(fù)當(dāng)所有條件都符合的時(shí)候,系統(tǒng)將數(shù)據(jù)寫入數(shù)據(jù)表,并返回成功頁面,顯示用戶所填的注冊信息。登陸的具體實(shí)現(xiàn)要通過一個(gè)全程變量,即Session變量來實(shí)現(xiàn),在系統(tǒng)中則由一個(gè)單獨(dú)的session.jsp頁面來放置該session。用戶登錄的界面d

25、engluyufou.jsp,從member表查得用戶提交的帳戶名和密碼正確后,用一個(gè)全局變量,即Session變量保存這一消息(該變量名稱為Session(“user_name”))。示意圖如圖4-4所示圖4-4 登錄示意圖具體的判斷過程為:若session中user為空即session.getAttribute(user_name)=null,表明沒有經(jīng)過登陸與否的驗(yàn)證,則立即跳轉(zhuǎn)到dengluyufou.jsp,請用戶登錄;并將用戶登陸的帳號和密碼通過關(guān)鍵代碼為:String sql=select * from member where user_name=+user_name+;如果u

26、ser_name存在的話則判斷其密碼是否正確如果為真則將用戶信息賦給session session.setAttribute(user_name,+rs.getString(user_name)+);以方便系統(tǒng)對用戶在操作一些會員功能時(shí)進(jìn)行用戶身份驗(yàn)證。登錄后,可以馬上看到自己的資料,如圖4-5所示:圖4-5 用戶信息示意圖用戶在登錄之后也可以對自己的資料進(jìn)行修改,在點(diǎn)擊主頁面的修改資料之后,彈出這樣的一個(gè)頁面,用戶可以直接在文本框里修改,然后確認(rèn)。如圖4-6所示圖4-6 用戶資料修改示意圖修改這一過程的具體實(shí)現(xiàn)過程為sql=select * from member where user_na

27、me=+user_name+;根據(jù)用戶名將該用戶的所有信息列出來,以供用戶修改,修改的方法采用的是rs.updateString(user_pass,user_pass);其他的類似。4.4.3 購物車模塊的實(shí)現(xiàn)當(dāng)用戶登陸成功以后,如果找到了希望定購的物品,在點(diǎn)擊物品下方的定購以后,系統(tǒng)會彈出一個(gè)新的頁面,顯示該物品已經(jīng)添加進(jìn)購物車,然后用戶需要選擇定購的數(shù)量。頁面效果如圖4-7所示:圖4-7購物車示意圖在點(diǎn)擊確認(rèn)以后,該物品信息被后臺添加到購物車表即basket表中,如果用戶需要繼續(xù)購物,可以繼續(xù)選擇,不斷添加,系統(tǒng)會自動將所有信息寫入basket表,同時(shí)顯示用戶所購買的物品列表,及合計(jì)價(jià)格

28、。其具體代碼實(shí)現(xiàn)過程為:從session中取得該用戶的信息user_name=(String)session.getValue(user_name);對商品的信息進(jìn)行提取以寫入購物車表具體的寫入語句為:sql=insert into basket(sh_id,user_name,basket_count,sh_name,sh_cash);sql=sql+values(+sh_ids+,+user_name+,+counts+,+sh_name+,+sh_cashs+);以下是用戶執(zhí)行確認(rèn)后的示意圖,如圖4-8所示圖4-8 所購商品信息示意圖如果用戶在去收銀臺結(jié)帳前對已經(jīng)選購的物品不滿意時(shí),可選

29、擇清空購物車,同時(shí)系統(tǒng)也將basket表中相關(guān)信息刪除。用戶完成選購之后,可點(diǎn)擊收銀臺付款,系統(tǒng)返回最終選購物品列表和合計(jì)價(jià)格,如圖4-9所示:圖4-9收銀臺結(jié)帳示意圖該步驟實(shí)現(xiàn)的關(guān)鍵語句為:String sql=select * from basket where user_name=+user_name+and basket_check=false;系統(tǒng)只統(tǒng)計(jì)basket_check為否的該用戶選購的商品信息。用戶再一次確認(rèn)后,系統(tǒng)會顯示購物成功并返回給用戶一個(gè)定購單號,提示用戶填寫收貨人詳細(xì)信息,包括姓名、地址、郵編、郵箱、電話、付款方式、備注等信息,這些信息是系統(tǒng)自動從用戶表中提取出來

30、的,用戶可以修改,如圖4-10所示圖4-10 定貨單示意圖這一步的具體實(shí)現(xiàn)與用戶資料修改類似,都是先將該用戶的相關(guān)資料從數(shù)據(jù)庫中調(diào)出來sql6=select * from member where user_name=+(String)session.getValue(user_name)+;然后使用方法update對表中各項(xiàng)信息進(jìn)行修改。確認(rèn)后,系統(tǒng)彈出提交成功頁面,如圖4-11所示:圖4-11 訂貨成功示意圖該頁面也就是將用戶提交的訂單信息返回,并產(chǎn)生了一個(gè)唯一訂單號,以方便用戶查詢,這個(gè)訂單號的產(chǎn)生,并不是隨機(jī)產(chǎn)生的,而是使用了一定的規(guī)則,在這里主要是根據(jù)用戶名和訂單產(chǎn)生的時(shí)間來生成訂單

31、號,具體的代碼如下:String sub_number=;String now=(String)(new java.util.Date().toLocaleString();sub_number=user_name+now;相類似的,系統(tǒng)中的其他類似字段也可以使用這樣規(guī)則來產(chǎn)生隨機(jī)編號,以方便管理4.4.4商品信息的實(shí)現(xiàn) 商品信息主要是為了讓顧客對所需要的信息就行了解。其中網(wǎng)站設(shè)置會員價(jià)格和VIP會員價(jià)格,一般會員享受會員價(jià)格,付費(fèi)的VIP會員享受VIP價(jià)格。其中商品顯示的關(guān)鍵代碼如下:sql=select * from sh where sh_id=+sh_id;4.4.5后臺管理模塊的實(shí)現(xiàn)

32、網(wǎng)上購物系統(tǒng)除了能夠讓用戶實(shí)現(xiàn)前臺的瀏覽和購物等操作之外,還必須能夠使管理人員能夠?qū)ο到y(tǒng)的各種信息進(jìn)行維護(hù),比如商品的增加、刪除、修改,會員的審查,網(wǎng)站新聞的更新等等。管理功能是網(wǎng)上購物系統(tǒng)相當(dāng)重要的一部分功能。管理員可以通過主頁面的“后臺管理”進(jìn)入系統(tǒng)后臺進(jìn)行維護(hù),點(diǎn)擊之后,首要的就是進(jìn)行身份驗(yàn)證,輸入正確的帳號,密碼之后,方能進(jìn)入。由于涉及到交易,出于安全性考慮,管理員帳號應(yīng)盡量少分配,密碼也要盡量復(fù)雜,經(jīng)常更換。具體實(shí)現(xiàn)關(guān)鍵代碼如下:String sql=select * from admin where admin_name=+admin_name+ and admin_pass=+a

33、dmin_pass+;進(jìn)入之后系統(tǒng)管理的主頁面 采用了框架結(jié)構(gòu),左邊是一個(gè)樹型菜單,右邊顯示具體信息。管理的主要功能有商品信息的更新,會員信息維護(hù),網(wǎng)站信息維護(hù),廣告鏈接設(shè)置等四大塊,商品信息管理,主要就是添加新的商品,刪除和修改已經(jīng)添加的商品。添加商品的界面如圖4-11所示:圖4-11 商品添加界面 這一部分的實(shí)現(xiàn)也沒有新的方法,使用的依然是一些sql語句來對相關(guān)數(shù)據(jù)進(jìn)行添加和修改,添加的關(guān)鍵的sql語句用insert into插入就可以。這里不在貼出修改則使用update語句。刪除商品主要用到的關(guān)鍵語句為sql語句:sql=delete * from sh where sh_id=+Cin

34、t(request.getParameter(sh_id);其中需要用到記錄集分頁功能,由于代碼過長,故只說出主要思想:int PageSize =20; /設(shè)置每張網(wǎng)頁顯示兩條記錄int ShowPage = 1; /設(shè)置欲顯示的頁數(shù)int RowCount = 0; /ResultSet的記錄數(shù)目int PageCount = 0; /ResultSet分頁后的總頁數(shù)int duoyu=0;sql=select * from sh order by sh_id DESC;rs=mdb.executeQuery(sql);然后for循環(huán)hw表,對數(shù)目進(jìn)行判斷。點(diǎn)擊修改,可看到以下界面,如圖4

35、-12所示:圖4-12 商品修改界面實(shí)現(xiàn)方法和添加的sql語句差不多,修改用update語句實(shí)現(xiàn)就可以了。會員信息管理,則主要是添加會員和對一些惡意注冊用戶進(jìn)行刪除。添加用戶和添加商品的語句都是用insert 插入,主要sql語句是:sql=insert into member(user_name,user_pass,user_type) values(+user_name+,+user_pass+,+user_type+);mdb.executeInsert(sql);以下是用戶刪除界面如圖4-13所示:圖4-13 會員信息管理界面刪除則用delete語句:sql=select * from

36、 member where user_id=+user_id+;4.4.6 商品搜索模塊的實(shí)現(xiàn)網(wǎng)上購物作為一個(gè)在網(wǎng)上展示自己商品的銷售系統(tǒng),如何能讓用戶以最快的速度找到自己希望買到的物品,也是需要非常重視的一個(gè)問題,此時(shí)搜索引擎也就必不可少了。本購物系統(tǒng)也做了一個(gè)小模塊,以供用戶進(jìn)行一些模糊查找,用戶不必輸入全部名稱,只需輸入一些關(guān)鍵詞,系統(tǒng)就可以將符合該查詢條件的所有商品信息以網(wǎng)頁形式返回給用戶。該搜索功能在jsp頁面中實(shí)現(xiàn)的關(guān)鍵代碼為:則按商品名稱進(jìn)行搜索sql=select * from sh where sh_name like %+sh_name+%order by sh_id DE

37、SC;查找出所有含有該關(guān)鍵字的商品信息4.5 系統(tǒng)的整體設(shè)計(jì)和規(guī)劃中的問題由于是基于B/S1的系統(tǒng),網(wǎng)頁在其中就承擔(dān)著非常大的工作,包括向服務(wù)端后臺寫入和修改數(shù)據(jù),以及服務(wù)端響應(yīng)客戶端的請求,向客戶端頁面返回?cái)?shù)據(jù),這些工作不可能只由幾個(gè)網(wǎng)頁來完成,但網(wǎng)頁數(shù)量一多又必然結(jié)構(gòu)混亂,造成開發(fā)過程難以控制。為解決這個(gè)問題,我采用了現(xiàn)代軟件開發(fā)過程的模塊化思想,先將系統(tǒng)功能進(jìn)行分解,大致可分為兩部分,即前臺和后臺,前臺又包括主頁面及產(chǎn)品信息展示頁面、搜索功能頁面、新聞頁面、購物車及訂單頁面等幾個(gè)大的部分,后臺包括會員信息管理、商品信息管理、新聞信息管理、等幾個(gè)部分,各個(gè)部分又由許多小的頁面組成,這樣一來

38、雖然網(wǎng)頁數(shù)量沒有減少,但結(jié)構(gòu)清晰了很多,在開發(fā)過程中可以逐步,逐個(gè)模塊的實(shí)現(xiàn),提高了開發(fā)效率。4.6開發(fā)功能模塊所遇到的難點(diǎn)因?yàn)槭堑谝淮巫鲞@么完整的jsp系統(tǒng),所以碰到的問題也很多,除了一些基本的語法之外,感覺還是一些考慮問題的思維方式不太得當(dāng),比如我的這個(gè)網(wǎng)上購物系統(tǒng),我感覺難度比較大的還是購物車1這個(gè)模塊比較的難設(shè)計(jì),因?yàn)檫^程比較復(fù)雜,他的一些邏輯處理就比較的難以用代碼實(shí)現(xiàn)。我參考了一些電子商務(wù)網(wǎng)站,研究了一下他們的購物流程,大概有了一些處理的想法,用戶在點(diǎn)擊定購之后,系統(tǒng)先將該商品信息寫入購物車頁面,只有當(dāng)用戶在選擇了商品數(shù)量,及確認(rèn)按鈕之后,系統(tǒng)才將該信息寫入basket表,用戶不選擇

39、商品數(shù)量,或者不點(diǎn)擊確認(rèn)按鈕,系統(tǒng)就不把該商品信息寫入basket表,這樣就不至于造成basket表數(shù)據(jù)混亂,用戶無法繼續(xù)購物。當(dāng)用戶完成選購,點(diǎn)擊去收銀臺結(jié)算時(shí),系統(tǒng)開始判斷商品庫中的這些商品數(shù)量是否大于用戶所選數(shù)量,如果沒有,則提示用戶沒有該商品,如果有則將所有basket表中屬于該用戶id的商品信息提出來,并合計(jì)價(jià)格,返回給用戶,用戶如果確定付款購買,則給用戶提供一個(gè)訂貨單,由用戶填寫一些基本信息,確認(rèn)之后,系統(tǒng)則產(chǎn)生一個(gè)唯一的訂貨單號,并將其返回給用戶,以便用戶日后查詢,同時(shí),系統(tǒng)則將該用戶所選購的商品信息以及用戶信息放入到訂單表中。這樣就基本上實(shí)現(xiàn)了購物車的功能。4.7系統(tǒng)中存在的問

40、題及擬定的解決方法(1)第一個(gè)問題是用戶在注冊過程中,一些關(guān)鍵字段的命名規(guī)則存在著比較大的缺陷,比如用戶名的選擇上,一般的習(xí)慣是規(guī)定只能從az和數(shù)字09的隨機(jī)組合,不能有特殊字符,而且只能以字母開頭,不能以數(shù)字開頭,用戶名的長度也有限制,我在系統(tǒng)中只考慮了為空的情況,這是不夠的,我們可以在jsp頁面添加一段javascript驗(yàn)證代碼,主要是使用正則表達(dá)式對用戶名進(jìn)行限制,具體的代碼如下:if( form.username.value.length20) alert(您的用戶名長度應(yīng)該在520個(gè)字符之間!);長度判斷if ( fIsNumber(form.username.value.charAt(0),abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ)!=1 )alert(您的用戶名只能以字母開頭!); 開頭判斷 if ( fIsNumber(form.username.value, 特殊字符判斷1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_)!=1 )alert(您的用戶名應(yīng)該是數(shù)字、字母、下劃線,不允許出現(xiàn)漢字等其他字符!);(2)第二個(gè)問題就是用戶登陸以后,如果需要修改資料,系統(tǒng)會先將數(shù)據(jù)庫中該用戶

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論