版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
目錄一網(wǎng)上購物系統(tǒng)概述41.1系統(tǒng)開發(fā)的背景4網(wǎng)上購物的開展4網(wǎng)上購物系統(tǒng)的現(xiàn)狀41.2系統(tǒng)實現(xiàn)的目標(biāo)41.3系統(tǒng)的開發(fā)意義5二網(wǎng)上購物系統(tǒng)分析52.1網(wǎng)站的設(shè)計目標(biāo)52.2網(wǎng)站的可行性分析52.3網(wǎng)站的深入調(diào)查52.4網(wǎng)站設(shè)計的特點62.5網(wǎng)站開發(fā)的設(shè)計思想62.6系統(tǒng)設(shè)計的總體規(guī)那么6三系統(tǒng)的開發(fā)技術(shù)及主要架構(gòu)63.1開發(fā)技術(shù)的選擇63.2系統(tǒng)的主要架構(gòu)及開發(fā)模式7基于B/S的體系結(jié)構(gòu)7基于MVC的應(yīng)用開發(fā)模型8四系統(tǒng)的功能和流程分析94.1網(wǎng)站的功能分析94.2平臺功能模塊的設(shè)計分析94.3系統(tǒng)流程分析9前臺購物流程9注冊功能流程10商品搜索流程10用戶登錄流程11商品管理流程11購物車流程12五系統(tǒng)功能的具體實現(xiàn)125.1系統(tǒng)數(shù)據(jù)庫表的根本設(shè)計125.2功能總體說明14目錄結(jié)構(gòu)說明14功能頁面結(jié)構(gòu)14主要功能流程155.3各功能模塊的實現(xiàn)15數(shù)據(jù)庫的連接155.3.2用戶登錄模塊的實現(xiàn)16購物車模塊的實現(xiàn)18后臺管理模塊的實現(xiàn)20商品搜索模塊的實現(xiàn)22六系統(tǒng)中所存在的問題及解決方案226.1系統(tǒng)的整體設(shè)計的整體設(shè)計和規(guī)劃中的問題226.2開發(fā)功能模塊所遇到的難點226.3系統(tǒng)中存在的問題及擬定的解決方法22網(wǎng)上購物電子商務(wù)系統(tǒng)規(guī)劃與設(shè)計書一網(wǎng)上購物系統(tǒng)概述1.1系統(tǒng)開發(fā)的背景網(wǎng)上購物的開展幾年來,跟隨著Internet的迅速崛起,互聯(lián)網(wǎng)已日益成為收集提供信息的最正確渠道并逐步進(jìn)入傳統(tǒng)的流通領(lǐng)域。于是電子商務(wù)開始流行起來,越來越多的商家在網(wǎng)上建起在線商店,向消費者展示出一種新穎的購物理念網(wǎng)上購物系統(tǒng)作為B2B,B2C〔BusinesstoCustomer,即企業(yè)對消費者〕,C2C〔CustomertoCustomer,即消費者對消費者〕電子商務(wù)的前端商務(wù)平臺,在其商務(wù)活動全程過程中起著舉足輕重的作用,本文主要考慮的是如何建設(shè)B2C的網(wǎng)上購物系統(tǒng)。網(wǎng)上購物是一種具有交互功能的商業(yè)信息系統(tǒng)。他向用戶提供靜態(tài)和動態(tài)兩類信息資源。所謂靜態(tài)信息是指那些比經(jīng)常變動或更新的資源,如公司簡介,會議安排和培訓(xùn)信息等。網(wǎng)上購物系統(tǒng)具有強(qiáng)大的交互功能??墒股碳液陀脩舴奖愕膫鬟f信息,完成電子貿(mào)易或EDT交易。這種全新的交易方式實現(xiàn)了公司間文檔與資金的無紙化交換。網(wǎng)上購物系統(tǒng)的現(xiàn)狀目前在國內(nèi)PHP與ASP應(yīng)用最為廣泛。而JSP由于是一種較新的技術(shù),國內(nèi)采用的較少。但在國外,JSP已經(jīng)是比擬流行的一種技術(shù),尤其是電子商務(wù)類的網(wǎng)站,多采用JSP。采用PHP的網(wǎng)站如新浪網(wǎng)〔sina〕、中國人〔chinaren〕等,但由于PHP本身存在的一些缺點,使得它不是和應(yīng)用大型電子商務(wù)站點,而更適合一些小型的商業(yè)站點。首先,PHP缺乏規(guī)模支持。其次,缺乏多層結(jié)構(gòu)支持。對于答復(fù)和站點,解決方法只有一個:分布計算。數(shù)據(jù)庫、應(yīng)用邏輯層、表示邏輯層彼此分開,而且同層也可以根據(jù)流量分開,組成二維陣列。而PHP那么缺乏這種支持。還有上面提到過的一點,PHP提供的數(shù)據(jù)庫接口支持不容易,這就使得他不是和運用在電子商務(wù)中。ASP和JSP那么沒有以上缺陷,ASP可以通過MicrosoftWindows的COM/DCOM獲得ActiveX規(guī)模支持,通過DCOM和TranscationServer獲得結(jié)構(gòu)支持:JSP可以通過SUNJava的JavaClass和EJB獲得規(guī)模支持,通過EJB/CORBA以及眾多廠商的ApplicationServer獲得結(jié)構(gòu)支持。三者中,JSP應(yīng)該是未來開展的趨勢。世界上一些大的電子商務(wù)解決方案提供商都采用JSP/Server。比擬知名的如IBM的E—business,它的核心是采用JSP/Servlet的WebSphere;西方另外一個非常著名的電子商務(wù)軟件提供商,Intershop。他原來的產(chǎn)品Intershop1,2,3,4占據(jù)了主要的電子商務(wù)軟件份額。它們都是通過CGT來提供支持的。但去年10月后他推出了Enfinity,一個采用JSP/Servlet的電子商務(wù)ApplicationServer,而且聲言不再開發(fā)傳統(tǒng)軟件??偟膩碚f,ASP,PHP,JSP三者都有相當(dāng)數(shù)量的支持者,而這四者也各有所長,在開發(fā)過程中,我們應(yīng)該根據(jù)實際的需要來使用最適合的技術(shù),本系統(tǒng)那么采用較新的jsp技術(shù),一方面jsp的平安性和跨平臺性比擬好,另一方面,我也希望能從開發(fā)該系統(tǒng)的過程中,深入學(xué)習(xí)一下這門編程語言。1.2系統(tǒng)實現(xiàn)的目標(biāo)現(xiàn)在流行的網(wǎng)上購物系統(tǒng)不僅要有漂亮的網(wǎng)頁,更要有嚴(yán)謹(jǐn)?shù)囊?guī)劃,注重每一個細(xì)小的環(huán)節(jié)。這樣才能使得在電子交易時防止不必要錯誤的發(fā)生。我們將使用HTML、JSP等技術(shù)來編輯網(wǎng)頁,并運用JDBC技術(shù)把數(shù)據(jù)庫和動態(tài)網(wǎng)頁相關(guān)聯(lián)。傳統(tǒng)的管理信息系統(tǒng)信息獲取方法是由專業(yè)文字錄入人員將信息輸入到管理系統(tǒng)的數(shù)據(jù)庫中,這種方法在數(shù)據(jù)量不大時有很多的應(yīng)用場合。當(dāng)數(shù)據(jù)量比擬大,并且較強(qiáng)的專業(yè)性時,錄入的費用和出錯的可能性都相應(yīng)上升。本設(shè)計在實際應(yīng)用中的解決方案是建立網(wǎng)站,以及自己的數(shù)據(jù)庫,似的所需商品信心可以及時的保存、更新,可以更好的及時了解商品買賣的情況。1.3系統(tǒng)的開發(fā)意義Internet的開展,為改變傳統(tǒng)的商業(yè)運作模式提供了一種技術(shù)上的可行性的方案:利用Internet的技術(shù)和協(xié)議,建立各種企業(yè)內(nèi)部網(wǎng)Internet,企業(yè)外部網(wǎng)Extranet,通過廉價的通訊手段,將買家與賣家、商場和合作伙伴緊密結(jié)合在了一起,消除時間與空間帶來的長安,從而大大的節(jié)約了交易本錢,擴(kuò)大了交易范圍。而在世界的生活中,這種方案已經(jīng)被廣泛的運用到了世紀(jì)的商業(yè)活動中了,人們將這種交易模式成為:電子商務(wù)。當(dāng)今比擬流行的網(wǎng)上購物系統(tǒng)國外有“淘寶〔〕〞,國內(nèi)游“當(dāng)當(dāng)〔〕〞。他們都是相當(dāng)優(yōu)秀的電子商務(wù)網(wǎng)站,對其他的網(wǎng)站提供了良好的典范。設(shè)計中可以學(xué)習(xí)參考他們的思想,了解和熟悉整個網(wǎng)站的開發(fā)流程及完整的電子商務(wù)網(wǎng)站應(yīng)有的功能和考前須知。設(shè)計和完成一個電子商務(wù)網(wǎng)站的,將會牽涉到許多技術(shù)上的問題,如:動態(tài)網(wǎng)頁制作技術(shù)的,后臺數(shù)據(jù)庫的設(shè)計和管理,通過實際的只做個網(wǎng)站,可以防止紙上談兵,在實踐中掌握上述技術(shù)的使用。二網(wǎng)上購物系統(tǒng)分析系統(tǒng)分析師平臺開發(fā)的一個不可缺少的環(huán)節(jié),為了能夠使本系統(tǒng)更好、更完善地被設(shè)計出來嗎,就必須先進(jìn)行調(diào)查研究。在系統(tǒng)調(diào)查的根底上,對新系統(tǒng)的功能進(jìn)行細(xì)致的分析,從而才能夠開發(fā)出完整的系統(tǒng)設(shè)計2.1網(wǎng)站的設(shè)計目標(biāo)本平臺利用現(xiàn)在比擬廣泛的JSP+Oracle數(shù)據(jù)庫的架構(gòu)實現(xiàn)的,此系統(tǒng)分為前臺管理和后臺管理。前臺管理是友好的操作界面,供用戶瀏覽、查詢是用。包括:瀏覽商品、查詢商品、訂購商品、購物車、用戶維護(hù)等功能:后臺管理是提供應(yīng)管理員的,其中包括:商品管理、用戶管理等。水管李元從繁瑣的手工操作中解脫出來,并提高了辦公效率。2.2網(wǎng)站的可行性分析隨著計算機(jī)技術(shù)的開展和網(wǎng)絡(luò)人口的增加,網(wǎng)絡(luò)世界也越來越播送,越來越豐富,電子商務(wù)已經(jīng)成為網(wǎng)上的一股潮流。我們相信咬不了太長久的時間,顧客就可以在網(wǎng)絡(luò)世界上獲得他們在現(xiàn)實世界上可以獲得的所有商品和效勞??尚行匝芯渴菫榱伺宄到y(tǒng)開發(fā)的工程是是不是可以實現(xiàn)和值得進(jìn)行研究的過程,世界上是一次大大簡化系統(tǒng)分析和系統(tǒng)設(shè)計的過程,所以,進(jìn)行可執(zhí)行性的分析是非常必要的,也很重要的,經(jīng)過最初的設(shè)計目標(biāo)和進(jìn)行的市場調(diào)查得出以下的四點的可行性分析:〔1〕經(jīng)濟(jì)可行性:該平臺設(shè)計知識作為本人的畢業(yè)設(shè)計,又因為本人的設(shè)計能力有限,其功能還不能完善,所以沒有什么經(jīng)濟(jì)效益可談?!?〕技術(shù)可行性:JSP+Servlet的技術(shù)已經(jīng)較為成熟?!?〕運行可行性:該系統(tǒng)需要搭建JVM即JAVA虛擬機(jī)和Tomcat環(huán)境,在此環(huán)境下系統(tǒng),并且在正確連接數(shù)據(jù)庫后可以正常運行。〔4〕法律可行性:該平臺是作為畢業(yè)設(shè)計與商業(yè)無關(guān),又因為是自主開發(fā)設(shè)計,因此不會構(gòu)成侵權(quán),在法律上是可行的。通過以上的可行性分析,我將采用JSP+Servlet相結(jié)合的技術(shù),運用Access數(shù)據(jù)庫對網(wǎng)站進(jìn)行建設(shè)。2.3網(wǎng)站的深入調(diào)查經(jīng)過以上的初步調(diào)查和研究,并且確定了該平臺的可行性,并決定開發(fā)本平臺,為了能夠?qū)ΜF(xiàn)行的平臺內(nèi)容進(jìn)行充分了解,實用要開發(fā)的平臺更具有實用性和適應(yīng)性,通過兩個月的實習(xí)調(diào)查和指導(dǎo)老師的耐心介紹,設(shè)計出該平臺功能如下:能夠完成用戶根本信息錄入的注冊和用戶根本信息的個人前臺與后臺管理。能夠完成管理員對網(wǎng)站的商品資料〔商品添加、商品審查〕會員管理〔會員審查〕、網(wǎng)站信息管理〔新聞添加、修改刪除、公告設(shè)置〕,以及常規(guī)設(shè)置〔廣告添加,友情鏈接〕的功能。能通過電子商品的名稱,電子商品的分類進(jìn)行搜索。能夠通過查看購物車對所選商品進(jìn)行確定、挑選,通過訂單查詢對支付費用進(jìn)行確定。經(jīng)過前一階段的調(diào)查與研究分析,我已確定了該平臺設(shè)計的主要功能,對每個功能模塊也作了具體描述,下面就來具體分析該平臺的設(shè)計特點與具體思想。2.4網(wǎng)站設(shè)計的特點我所設(shè)計和開發(fā)的網(wǎng)上購物平臺是經(jīng)過很長時間的調(diào)查和分析才開始具體實施的,它的主要特點是改變了以往的購物只能通過現(xiàn)實的上場才能到達(dá)的結(jié)果,采用Web技術(shù),借助于Internet互聯(lián)網(wǎng)廣泛應(yīng)用技術(shù),到達(dá)資源共享,提高以往購物的局限性,縮短人們的時間和提高工作效率,具有較好的交互性,從而實現(xiàn)信息化,標(biāo)準(zhǔn)化,系統(tǒng)化,網(wǎng)絡(luò)化的平臺,是整個購物活動過程簡單、方便、易行。2.5網(wǎng)站開發(fā)的設(shè)計思想網(wǎng)上購物平臺主要是對后臺管理和前臺操作。后臺管理是管理員對本網(wǎng)站的維護(hù)通過商品資料〔商品添加、商品審查〕會員管理〔會員審查〕、網(wǎng)站信息管理〔新聞添加、修改刪除、公告設(shè)置〕,以及常規(guī)設(shè)置〔廣告添加,友情鏈接〕等功能到達(dá)對網(wǎng)站的管理。前臺操作時用戶登錄到本網(wǎng)站,可以進(jìn)行用戶注冊,通過網(wǎng)站的精品推薦或商品搜索功能,找到自己想要買的商品,裝入購物車,提交訂單進(jìn)行購置。網(wǎng)上購物平臺的特點是客戶和電子商品信息量很大名管理員需要整理的信息很多,為讓管理員輕松、方便、快捷的管理,該平臺采用符合購置電子商品的根本原那么,滿足廣闊客戶的日益增長的數(shù)量,并到達(dá)操作過程中的直觀、方便、實用平安等要求。2.6系統(tǒng)設(shè)計的總體規(guī)那么無論哪個網(wǎng)站都要有他自己的設(shè)計規(guī)那么。該平臺也一樣,它的主要涉及規(guī)那么有:簡單性:在實現(xiàn)平臺的功能的同時,盡量讓平臺操作簡單易懂,這對以一個網(wǎng)站來說是非常重要的。針對性:該平臺設(shè)計是網(wǎng)上購物系統(tǒng)及后臺管理的定向開發(fā)設(shè)計,所以具有專業(yè)突出和很強(qiáng)的針對性。實用性:該平臺能完成電子商品展示和管理員管理的根本信息,具有良好的實用性。三系統(tǒng)的開發(fā)技術(shù)及主要架構(gòu)3.1開發(fā)技術(shù)的選擇合理的選擇開發(fā)技術(shù),對于網(wǎng)站開發(fā)的完成情況有這非常重要的影響。要開發(fā)一個網(wǎng)站。首先要選擇一個動態(tài)網(wǎng)頁開發(fā)技術(shù)。當(dāng)前比擬流行的動態(tài)網(wǎng)頁開發(fā)技術(shù)有JSP、ASP、PHP。他們的特性比擬如下:這三中都是在傳統(tǒng)的HTML代碼中,利用HTML標(biāo)簽的擴(kuò)展,構(gòu)成頁面。不難看出,JSP的綜合實力是最強(qiáng)的,尤其是在平安性和化平臺性兩個方面,比其他的兩種技術(shù)都要好,因此,最后我們選擇基于Java的JSP技術(shù)作為動態(tài)網(wǎng)頁的開發(fā)技術(shù)。3.2系統(tǒng)的主要架構(gòu)及開發(fā)模式系統(tǒng)的建設(shè)關(guān)鍵在于其所使用的架構(gòu)嗎,而網(wǎng)上購物這種機(jī)遇web的系統(tǒng),傳統(tǒng)的C/S架構(gòu)已經(jīng)不能滿足大量用戶的訪問和操作,B/S基于瀏覽器的架構(gòu)那么是目前網(wǎng)絡(luò)系統(tǒng)應(yīng)用的主流,他將大量的數(shù)據(jù)處理工作交給效勞器端來處理,客戶端只用通過普通的IE瀏覽器即可訪問系統(tǒng),方便快捷而且利于系統(tǒng)的更新和維護(hù),Java語言在該方面更是得天獨厚,j2ee標(biāo)準(zhǔn)的出現(xiàn)那么是系統(tǒng)的開發(fā)更加標(biāo)準(zhǔn),層次更加清楚,更利于對復(fù)雜事物的處理,而且在平安性方面也做得更好。機(jī)遇mvc的開發(fā)流程那么是開發(fā)過程更加清晰明了,利于做一些復(fù)雜的邏輯實現(xiàn),從而節(jié)省了開發(fā)周期和開發(fā)本錢?;贐/S的體系結(jié)構(gòu)在B/S體系結(jié)構(gòu)系統(tǒng)中,用戶通過瀏覽器向分布在網(wǎng)絡(luò)上的許多效勞器發(fā)出請求,效勞器隊瀏覽器的請求進(jìn)行處理,將用戶所需信息返回到瀏覽器。B/S結(jié)構(gòu)簡化了客戶機(jī)的工作。客戶機(jī)上只需配置少量的客戶端軟件。效勞器將擔(dān)負(fù)更多的工作,對數(shù)據(jù)庫的訪問和應(yīng)用程序的執(zhí)行將在效勞器上完成。瀏覽器發(fā)出請求,而其余如數(shù)據(jù)請求、加工。結(jié)果返回以及動態(tài)網(wǎng)頁生成等工作全部由WebServer完成。實際上B/S體系結(jié)構(gòu)是把二層C/S結(jié)構(gòu)的事務(wù)處理邏輯模塊從客戶機(jī)的任務(wù)中別離出來,由Web效勞器單獨組成一層來負(fù)擔(dān)其任務(wù)這樣客戶機(jī)的眼里減輕了,把負(fù)荷分配給了Web效勞器。這種三層體系結(jié)構(gòu)如圖3.1所示。這種結(jié)構(gòu)不僅把客戶機(jī)從沉重的負(fù)擔(dān)和不斷對其提高的性能的要求中解放出來,也把技術(shù)維護(hù)人員從繁重的維護(hù)升級工作中解脫出來。由于客戶機(jī)把事務(wù)處理邏輯局部分給了功能效勞器,是客戶機(jī)一下子“苗條〞了許多,不再負(fù)責(zé)處理復(fù)雜計算和數(shù)據(jù)訪問等關(guān)鍵事務(wù),只負(fù)責(zé)顯示局部,所以維護(hù)人員不再為程序的維護(hù)工作奔波于每個客戶機(jī)之間,而把主要精力放在功能效勞器上程序的更新共組。這種三成結(jié)構(gòu)在成渝層之間相互獨立,任何一層的改變不會影響其它層的功能。基于MVC的應(yīng)用開發(fā)模型在傳統(tǒng)的機(jī)遇web的應(yīng)用系統(tǒng)中,例如ASP,CGI等,通常開發(fā)者將業(yè)務(wù)邏輯,數(shù)據(jù)邏輯、展示邏輯等混雜在一起,在同一個界面里既進(jìn)行后臺數(shù)據(jù)庫的訪問和操作,同時還包含業(yè)務(wù)流程和頁面表示。這樣編寫出來的程序,既不利于程序員對業(yè)務(wù)代碼的調(diào)試,同時也不利于編輯人員進(jìn)行交互頁面的設(shè)計。同時系統(tǒng)也不具備可擴(kuò)展性。當(dāng)我們要在現(xiàn)有業(yè)務(wù)上進(jìn)行擴(kuò)展的時候,通常無法借助于現(xiàn)有的資源和應(yīng)用,而只能夠重新編寫,大大增加了投資,延長了系統(tǒng)上線的時間,失去了競爭市場的優(yōu)勢。在本網(wǎng)上購物系統(tǒng)中,將采用通行的MVC模式來構(gòu)建應(yīng)用。這種結(jié)構(gòu)解決了前面所述的所有問題,在我們的應(yīng)用集成網(wǎng)絡(luò)中,通過企業(yè)高端J2EE應(yīng)用效勞器實現(xiàn)MVC開發(fā)模型,MVC的邏輯圖如下:通過這種方案,我們可以迅速的實現(xiàn)整個業(yè)務(wù),其優(yōu)勢和特點如下:Model〔模型〕層:由EJB組件來實現(xiàn),EJB將具體的業(yè)務(wù)封裝在組建內(nèi)部,具備平安、高性能、可重用等優(yōu)秀的特征。Vlew〔視圖〕層:由JSP、HTML組成。這一層次的特點是能夠真實的展示和客戶交互的界面,具備可描繪的功能,同時能夠嵌套動態(tài)數(shù)據(jù),可以進(jìn)行動態(tài)頁面的展示。同時可以方便地進(jìn)行客戶端的個性化定制,根據(jù)每個客戶的需求來展示不同風(fēng)格的界面。Controller〔控制器〕層,是非常重要的一層,這一層是連接View和Model的紐帶,同時也是將這兩層進(jìn)行最大限度別離的工具。通常由Servlet來實現(xiàn),Servlet和JSP雖然同樣都屬于頁面展示工具,但分屬兩層。主要在于JSP以腳本語言的形式存在,它的主要優(yōu)勢是進(jìn)行動態(tài)數(shù)據(jù)的Web展示,而Servlet是一個完整的Java程序,進(jìn)行業(yè)務(wù)的調(diào)用和流程的處理是他的長處。通過這種母性的建立,我們的應(yīng)用系統(tǒng)具備了非常好的性能和可擴(kuò)展性。將業(yè)務(wù)組件和展示頁面進(jìn)行別離,并通過Controller來描述調(diào)用關(guān)系,一方面可以提高效率,另一方面也可以增加系統(tǒng)擴(kuò)充的能力,是我們的胸可以進(jìn)行最快速度的業(yè)務(wù)擴(kuò)展,以滿足不同用戶、不同階段、各種各樣的業(yè)務(wù)需求。四系統(tǒng)的功能和流程分析4.1網(wǎng)站的功能分析經(jīng)過前期的深入調(diào)查和研究,總結(jié)出該平臺需要完成的一些具體功能,分析如下:用戶管理:能夠完成用戶根本信息錄入的注冊和用戶根本信息的修改。管理員管理:能夠完成管理員對網(wǎng)站的商品信息管理〔商品添加、商品審查〕會員管理〔會員審查〕、網(wǎng)站信息管理〔新聞添加、修改刪除、公告設(shè)置〕,以及常規(guī)設(shè)置〔廣告添加,友情鏈接〕等功能。搜索功能:能過電子商品的名稱進(jìn)行搜索。查詢功能:能夠通過查看購物車對所選商品進(jìn)行確定、挑選。4.2平臺功能模塊的設(shè)計分析在平臺功能的分析根底上,得到本平臺的功能模塊圖如下:4.3系統(tǒng)流程分析前臺購物流程注冊功能流程注冊的具體實現(xiàn)為:點擊主頁面的用戶注冊選項后,會彈出一個注冊信息頁面,用戶需要如實填寫用戶名,密碼,Email,地址,,真實姓名等各項信息,提交后,系統(tǒng)進(jìn)行檢測判斷該用戶名是否已經(jīng)注冊過,如果已經(jīng)存在那么彈出新頁面,提示用戶該用戶名已經(jīng)注冊過,如果沒有那么進(jìn)行下一步判斷,用戶輸入的兩次密碼是否一致,然后依次往后判斷用戶所填寫的各項信息是否符合要求,知道所有信息均正確無誤,系統(tǒng)將該用戶注冊信息寫入會員表即member并提示用戶注冊成功,用戶登錄號,就可以進(jìn)行有效的購物了。商品搜索流程商品的搜索功能使用戶更加方便的進(jìn)行自己所需要的商品查詢,節(jié)省時間,提高效率。用戶搜索時只要輸入商品的關(guān)鍵字就能搜索到所有相關(guān)商品。并且能列出通過搜索的到的商品的詳細(xì)信息。用戶登錄流程用戶登錄,首先要有一個提供用戶登錄的表單。用戶登錄的表單應(yīng)該嵌入整體的結(jié)構(gòu)當(dāng)中。在實際的應(yīng)用中,可以這樣設(shè)計,如果用戶沒有登錄,那么在頁面中顯示用戶登錄的選項,用戶登錄后,那么可隱藏用戶登錄的選項而代之以用戶的根本信息。首先,用戶要有一個用戶名和密碼。商務(wù)網(wǎng)站需要很高的穩(wěn)定性和平安性,因此對用戶名不允許使用惡意的代碼作為用戶名。同時對密碼也要求保密,將密碼加密后再存入數(shù)據(jù)庫。另外,一個電子商務(wù)網(wǎng)站。用戶的真實姓名是必不可少的。除此之外還需要用戶的性別、Email、號碼等。商品管理流程在該功能里管理員可以進(jìn)行不需要的商品的刪除,在這里管理員當(dāng)然也可以瀏覽到商品的詳細(xì)信息。并且比普通用戶在瀏覽商品界面里所看到的商品信息多一個該商品在數(shù)據(jù)庫中的ID。購物車流程購物車具體的實現(xiàn)可采用這種形式:定義一個購物車的類〔Class〕。列出商品的列表,使用戶能夠自由選擇所需要的商品。當(dāng)用戶在點擊“添加到購物車〞的連接時,執(zhí)行如下功能:檢查用戶購物車類是否存在。如不存在,那么建立,并注冊這Session變量:在由用戶購物車類存在的情況下,在檢查該類中是否有該商品。如存在,那么商品數(shù)量相應(yīng)加1;如沒有該商品,那么該商品添加到該類中。五系統(tǒng)功能的具體實現(xiàn)5.1系統(tǒng)數(shù)據(jù)庫表的根本設(shè)計在建設(shè)網(wǎng)站系統(tǒng)之前,我們必須對系統(tǒng)所用到的數(shù)據(jù)進(jìn)行大致的分類和具體的結(jié)構(gòu)設(shè)計,既要做到清晰明了,又要能適應(yīng)系統(tǒng)各項功能的調(diào)用,而不至于產(chǎn)生結(jié)構(gòu)上的邏輯混亂,保證關(guān)鍵數(shù)據(jù)在意外情況下不會被破壞,可以說數(shù)據(jù)庫是系統(tǒng)的重中之重。數(shù)據(jù)庫設(shè)計要遵循一些規(guī)那么,一個好的數(shù)據(jù)庫滿足一些嚴(yán)格的約束和要求。進(jìn)兩別離歌試題對應(yīng)的表,一個實體對應(yīng)一個表,搞清楚該試題有哪些屬性,對應(yīng)有些什么字段,以及各實體之間有何種聯(lián)系。實體、屬性與聯(lián)系是進(jìn)行概念設(shè)計時要考慮的三個元素,也是一個好的數(shù)據(jù)庫設(shè)計的核心。從實際出發(fā),經(jīng)過仔細(xì)地設(shè)計,得到各表的設(shè)計如表5.1—5.9所示。[說明]對于商品信息表,因為經(jīng)驗缺乏,我將其關(guān)鍵字段hw_id商品編號采用的是Access數(shù)據(jù)庫中的自動編號,雖然也確定了商品信息的唯一性,但不具備直觀的特點,在實際應(yīng)用中最好是將其設(shè)置一個命名規(guī)那么,管理人員再添加商品的時候能夠自動產(chǎn)生一個有一定規(guī)那么和一定意義的命名規(guī)那么,方便管理人員對其進(jìn)行管理和維護(hù),例如對于類商品可將其編號設(shè)置為mobile+型號+添加日期,這樣更容易對商品進(jìn)行管理。Hw_pic字段代表圖片,但在這里存放的只是它的路徑所以應(yīng)該使用文本類型。[說明]對于會員信息表,會員編號也要有一定的命名規(guī)那么,另外會員賬號的命名規(guī)那么也有一定要求,如必須以字母開頭,不能有特殊字符,長度大于4個字符小于16個字符等等,還有一個需要注意的是用戶密碼,由于Acess數(shù)據(jù)庫本身不提供特殊字段的加密,用戶注冊以后注冊密碼是一明碼形式存放在數(shù)據(jù)庫中,這對系統(tǒng)來說是極不平安的,因此需要我們用一些特殊工具來對其進(jìn)行加密。[說明]購物車表那么是系統(tǒng)中與其他幾個表關(guān)系最多的一個表,它包含了商品表,會員表中的幾個重要字段,是我們進(jìn)行最后購物統(tǒng)計的主要依據(jù),我們在確定購置一樣商品的時候,系統(tǒng)將數(shù)據(jù)寫入購物車表,在用戶確定去結(jié)賬之前basket_check值為否,確定之后質(zhì)變衛(wèi)士,一個用戶可能對應(yīng)多個basket記錄,但在同級的時候,僅對basket_check為真的記錄進(jìn)行統(tǒng)計,這樣就可以防止造成統(tǒng)計錯誤。[說明]該表和會員表一樣存在字段的命名規(guī)那么的要求,出于平安考慮對于管理員賬號發(fā)放應(yīng)該謹(jǐn)慎,管理人員數(shù)量一定要控制,越少越平安,在實際應(yīng)用中,我們還要對整個數(shù)據(jù)庫進(jìn)行加密,以防止系統(tǒng)重要數(shù)據(jù)泄漏。[說明]存儲網(wǎng)站新聞信息,與其他表沒有關(guān)聯(lián)。[說明]該表主要存儲一些網(wǎng)站信息,如系統(tǒng)管理員的聯(lián)系方式等,一頁面的形式提供應(yīng)用戶,與其他表沒有關(guān)聯(lián)。[說明]該表為單獨的表,與其他表沒有關(guān)聯(lián),主要存儲一些鏈接網(wǎng)站或廣告信息。5.2功能總體說明目錄結(jié)構(gòu)說明〔1〕admin用于存儲系統(tǒng)管理員的后臺操作腳本,包括商品類別管理、商品信息管理、站內(nèi)公告管理、訂單管理、系統(tǒng)用戶管理等功能:〔2〕pic用來存儲商品的圖片資料,管理員上傳的商品圖片也存在這里?!?〕img用來存儲網(wǎng)頁上的圖片文件?!?〕database用來存儲系統(tǒng)的數(shù)據(jù)庫,由于環(huán)境限制,本系統(tǒng)采用的是windows自帶的Acess數(shù)據(jù)庫,所有的相關(guān)表也都放在這里?!?〕Class用來存儲封裝起來的一些servelet,也可稱為JavaBeam文件。功能頁面結(jié)構(gòu)〔1〕前臺功能頁面主頁面框架:index.jsp,top.in-searchjsp,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.jsp新聞管理:addnews.jsp,editnews.jsp,delnews.jsp公告管理:gg.jsp,gg2.jsp,ggdel.jsp廣告鏈接:guanggao.jsp,links.jsp,savelinks.jsp主要功能流程5.3各功能模塊的實現(xiàn)數(shù)據(jù)庫的連接出于平安性的考慮,我們將于數(shù)據(jù)庫的連接,單獨寫出來并進(jìn)行編譯,也就是數(shù)據(jù)庫連接的JavaBean文件,編譯出來的class文件是無法被修改的只能通過原文件進(jìn)行修改,我們在JSP頁面中只用直接調(diào)用改方法即可,在本系統(tǒng)中我們將其命名為faq存放在class/ckstudio/db下設(shè)其id為mab,我們在需要對數(shù)據(jù)庫進(jìn)行操作的時候只需在頁面上添加這樣一個標(biāo)簽<jsp:useBeanid=〞mab〞class=〞〞scope=〞page〞/>即可。連接管件代碼如下:用戶登錄模塊的實現(xiàn)用戶登錄模塊是防止非法用戶登錄的第一道防線,通過它可以保護(hù)后臺數(shù)據(jù)庫的平安性,當(dāng)用戶要進(jìn)行訂購時,首先要進(jìn)入的就是身份驗證界面,只有在密碼正確的情況下才能進(jìn)行以后的購物,如果輸入的密碼不正確,那么不能進(jìn)行訂購。如果用戶已瀏覽者的身份進(jìn)入網(wǎng)站,那么只能進(jìn)行一般的商品瀏覽和搜索,而不能進(jìn)行選購,再點擊添加購物車后,系統(tǒng)會判斷該用戶是否是登錄用戶,如果不是那么彈出來提示頁面,提示用戶必須先登錄才能訂購商品,如果是第一次登錄,請先注冊。主頁面的效果圖如下:登錄的具體實現(xiàn)要通過一個全程變量,即session變量來實現(xiàn),在系統(tǒng)中那么有一個單獨的session.jsp頁面來放置該session。用戶登錄的界面dengluyufou.jsp,從member表差的用戶提交的賬戶名和密碼正確后,用一個全局變量,即session變量保存這一消息〔該變量名稱為session〔“user_name“〕〕。具體的判斷過程為:假設(shè)session中user為空即session.getAttrubute(“user_name〞)==null,說明沒有經(jīng)過登錄與佛的驗證,那么立即跳轉(zhuǎn)到dengluyufou.jsp,請用戶登錄:并將用戶登錄的賬號和密碼通過User_name=request.getParameter(“user_name〞):User_pass=request.getParameter(“user_pass〞):分別賦給變量user_name,和user_pase,然后將其與數(shù)據(jù)庫中的相應(yīng)信息進(jìn)行比擬Stringsql=〞select*frommemberwhereuser_name=’〞+user_name+〞’〞:如果user_game存在的話那么判斷奇密碼是否正確User_pass.equaks(rs.getString(“user_pass〞))如果為真那么將用戶信息賦給sessionSession.setAttribute(“user_name〞,〞〞+rs.getString(“user_name〞)+‘’):以方便系統(tǒng)對用戶在操作一些會員功能是進(jìn)行用戶身份驗證。如果用戶還不是會員那么提示用戶進(jìn)行注冊,用戶提交信息之后,系統(tǒng)開始判斷用戶的注冊信息是否有效,首先是用戶名是否為空,〔該儲存在用戶命名規(guī)那么的問題,后面問題中會詳細(xì)解決〕用戶輸入的兩次密碼是否一致,然后依次往后判斷用戶所填寫的各項信息是否符合要求,知道所有信息均正確無誤,系統(tǒng)將該用戶注冊寫入會員表即member:并提示用戶注冊成功,用戶登錄后,就可以進(jìn)行有效的購物了。注冊頁面效果圖如下:系統(tǒng)對用戶的注冊信息的驗證實現(xiàn)如下:用戶輸入的各項信息分別對應(yīng)字段User_name,user_pass,user_pass2,user_adds,User_tel,user_mail,user_postcode:先判斷用戶名是否為空request.getParameter(“user_name〞)):如果不為空那么將改制傳給變量user_nameUser_name=getStr(request.getParameter(“user_name〞)):同樣道理對密碼進(jìn)行判斷Request.getParameter(“user_pass〞).equals(“〞))Request.getParameter(“user_pass2”).equals(“〞判斷兩次出入是否一致user_pass.equals(user_oass2)其它選項與上面類似,如果條件符合那么將該支賦給各個字段用戶名重復(fù)的驗證代碼為:Sql=〞sekect*frommemberwhereuser_name+’〞+user_name+’〞〞:Rs=mdb.esecuteQuery(sql):If(rs.next())[Errmsg=errmsg+〞用戶名已被別人注冊〞:Fkunderr=true:]當(dāng)所有條件都符合的時候,系統(tǒng)將數(shù)據(jù)寫入數(shù)據(jù)表,并返回成功頁面,顯示用戶所填的注冊信息,寫入關(guān)鍵語句為:Sql=〞InsertintoMember(user_ame,user_pass,user_adds,user_mail,user_tel,user_regip,user_namec)values(‘〞+user_name+〞’,’〞+user_pass+〞’,’’+user_adds+〞’,’’+user_mail+〞’,’〞+user_tel’’,’〞+request.getRemoteHost()+〞’,’’’+getStr(request.gerParameter(“user_namec’)))〞:用戶在注冊之后也可以對自己的資料進(jìn)行更改,再點擊主頁面的修改資料后,彈出這樣的一個頁面,用戶可以直接在文本框里修改,然后確認(rèn)?!ば薷倪@一過程具體實現(xiàn)過程為User_name=request.getParameter(“user_name〞):Sql=〞select*frommemberwhereuser_name=’〞+user_name+〞’〞:ResultSetrs;rs=mdb,esecuteQuery(sql);根據(jù)用戶名將該用戶的所有新系列出來,以供用戶修改修改方法采用的是rs.updateString(“user_pass〞,user_pass);其他的類似。購物車模塊的實現(xiàn)當(dāng)用戶登錄成功以后,如果找到哦啊了希望訂購的物品,再點擊物品下方的訂購以后,系統(tǒng)會彈出一個新的頁面,顯示該物品已經(jīng)添加進(jìn)購物車,然后用戶需要選擇訂購的數(shù)量。頁面效果如下:在點擊確認(rèn)以后,該物品信息被后臺添加到購物車表即basket表中,如果用戶需要繼續(xù)購物,可以繼續(xù)選擇,不斷添加,系統(tǒng)會自動將所有信息寫入basket表,同時顯示用戶所購置的物品列表,及合計價格。其具體代碼實現(xiàn)過程為:從session中缺的該用戶的信息User_name=(String)session.getCalue(“user_name〞);User_trpe=(String)session.getValue(“user_type〞);對商品的信息進(jìn)行提取以寫入購物車表Stringhw_ids=resquest.getParameter(“hw_id〞);Stringcounts=getParameter(“count〞);Stringhw_cashs=request.getParameter(“hw_cash’);Hw_name+request.getParameter(“hw_name〞);具體寫入語句為:Sql=〞insertintobasket(hw_id,user_name,basker_count,hw_name,hw_cash)〞;Sql=sql+〞values(‘〞+hw_ids+〞’,’〞+user_name〞’,’〞+counts+〞’,’〞+hw_name+〞’,’〞+hw_cashs+〞’)〞;Mdb.executeInsert(sql):如果用戶在去收銀臺結(jié)賬前對已經(jīng)選購的物品不滿意時,可選擇清空購物車,同時系統(tǒng)也將basket表中相關(guān)信息刪除。用戶完成選購之后,可點擊收銀臺副快,系統(tǒng)返回最終選購物品列表和合計價格,如下圖系統(tǒng)只統(tǒng)計basket——check為否的該用戶選購的商品信息。用戶再一次確認(rèn)后,系統(tǒng)會顯示購物成功并返回給用戶一個訂購單號,提示用戶填寫收貨人詳細(xì)信息,包括姓名、地址、郵箱、、付款方式等,這些信息是系統(tǒng)自動從用戶表中提取出來的,用戶可以修改后臺管理模塊的實現(xiàn)網(wǎng)上購物系統(tǒng)除了能夠讓用戶實現(xiàn)前臺的瀏覽和購物等操作之外,還必須能夠使管理人員能夠?qū)ο到y(tǒng)的各種信息進(jìn)行維護(hù),比方商品的增加、刪除、修改,會員的審查,網(wǎng)站新聞的更新等等。管理功能是網(wǎng)上購物系統(tǒng)相當(dāng)重要的一局部功能。管理員可以通過主頁面的“管理進(jìn)入“進(jìn)行系統(tǒng)后臺進(jìn)行維護(hù),點擊之后,首要的就是進(jìn)行身份驗證,輸入正確的賬號,密碼之后,方能進(jìn)入。由于涉及到交易,出于平安性考慮,管理員賬號應(yīng)盡量少分配,密碼也要盡量復(fù)雜,經(jīng)常更換。進(jìn)入之后系統(tǒng)管理的主頁面采用了框架結(jié)構(gòu),左邊是一個樹形菜單,右邊顯示具體信息。管理的主要功能有商品信息的更新,會員信息維護(hù),網(wǎng)站信息維護(hù),廣告連接設(shè)置等四大塊,商品信息管理,主要就是添加新的商品,刪除和修改已經(jīng)添加的商品。如下列圖所示:會員信息管理,那么主要是對一些惡意注冊用戶進(jìn)行刪除,該功能設(shè)計存在一定問題,具體在后面會有一定說明。網(wǎng)站信息管理,進(jìn)行網(wǎng)上新聞的發(fā)布,修改刪除,以及系統(tǒng)公告等信息的設(shè)置,這些功能雖然無關(guān)緊要,但在實際中卻能方便用戶,提高網(wǎng)站效益。廣告鏈接,可以進(jìn)行一些廣告信息的發(fā)布,及更新和修改,主要是鏈接一些合作單位的網(wǎng)頁,能夠給自己帶來一些經(jīng)濟(jì)上的收益。在完成系統(tǒng)的更新之后,作為管理人員,應(yīng)該及時注銷自己的賬戶,樹形菜單的上方提供了注銷登錄的選項,點擊之后,注銷用戶,并返回到前臺頁面,防止他人惡意修改網(wǎng)站信息,造成不必要的損失。以上兩個局部都是比擬簡單的功能實現(xiàn),具體實現(xiàn)過程與前幾個類似。商品搜索模塊的實現(xiàn)網(wǎng)上購物作為一個在網(wǎng)上展示自己商品的銷售系統(tǒng),如何能讓用戶以最快的速度找到自己希望買到的物品,也是需要非常重視的一個問題,此時搜索引擎也就必不可少了。本購物系統(tǒng)也做了一個小模塊,以供用戶進(jìn)行一些模糊查找,用戶不必輸入全部名稱,只需輸入一些關(guān)鍵詞,系統(tǒng)就可以將符合該查詢條件的所有商品信息以網(wǎng)頁形式返回給用戶。六系統(tǒng)中所存在的問題及解決方案6.1系統(tǒng)的整體設(shè)計的整體設(shè)計和規(guī)劃中的問題由于是基于B/S的系統(tǒng),網(wǎng)頁在其中就承當(dāng)著非常大的工作嗎,包括向效勞端后臺寫入和修改數(shù)據(jù),以及效勞端響應(yīng)客戶端的請求,向客戶端頁面返回數(shù)據(jù),這些工作不可能只有幾個網(wǎng)頁來完成,但網(wǎng)頁數(shù)量一多又必然結(jié)構(gòu)混亂,造成開發(fā)過程難以控制。為了解決這個問題,我采用了現(xiàn)代軟件開發(fā)過程的模塊化思想,現(xiàn)將系統(tǒng)功能進(jìn)行分解,大致可分為兩局部,級前臺和后臺,前臺有包括主頁面及產(chǎn)品信息展示頁面、搜索功能頁面。、新聞信息管理等幾個局部,各個局部又由去多小的頁面組成,這樣一來雖然網(wǎng)頁數(shù)量沒有減少,但結(jié)構(gòu)清晰了很多名在開發(fā)過程中可以逐步,逐個模塊的實現(xiàn),提高了開發(fā)效率。6.2開發(fā)功能模塊所遇到的難點因為是第一次做這么完整的系統(tǒng),所以碰到的問題也很多,除了一些根本的語法之外,感覺還是以而寫考慮問題的思維方式不太得到,不如我的這個網(wǎng)上購物系統(tǒng),我感覺難度比擬大的還是購物車這個模塊比擬難設(shè)計,因為過程比擬復(fù)雜,它的一些邏輯處理就比擬的難以用代碼實現(xiàn)。我參考了一些電子商務(wù)網(wǎng)站,研究了一下他們的購物流程,大概有了一些處理的想法,用戶在點擊訂購之后嗎,系統(tǒng)現(xiàn)將該商品信息寫入購物車頁面,只有當(dāng)用戶在選擇了商品數(shù)量,及確認(rèn)按鈕之后,系統(tǒng)才將該信息寫入basket表,用戶不選擇商品水量活著不點擊確認(rèn)按鈕,系統(tǒng)就不把該商品信息寫入basket表,這樣就不至于造成basket表數(shù)據(jù)混亂,用戶無法繼續(xù)購物。當(dāng)用戶完成選購,點擊去收銀臺結(jié)算時,系統(tǒng)開始判斷商品庫中的這些商品數(shù)量是否大于用戶所選數(shù)量,如果沒有,那么提示用戶沒有該商品數(shù)量缺乏。如果有那么將所有baske
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度柴油交易平臺建設(shè)與運營合同樣本4篇
- 2025年度旅游度假區(qū)場地租賃及旅游服務(wù)合同11篇
- 2024年高端住宅小區(qū)二零二四年度飲用水品質(zhì)提升合同3篇
- 個性化珠寶訂制及保養(yǎng)服務(wù)合同書
- 2024藥店藥品銷售經(jīng)理聘用合同范本3篇
- 2025年度酒店餐飲場地租賃轉(zhuǎn)讓意向協(xié)議范本4篇
- 專業(yè)家務(wù)助理合作協(xié)議(2024規(guī)范版)
- 2025年智慧城市建設(shè)項目土地租賃合同樣本8篇
- 2025年度違法建筑拆除與歷史文化遺產(chǎn)保護(hù)合同4篇
- 2025年茶山茶葉加工廠租賃合作協(xié)議范本4篇
- 臨床醫(yī)學(xué)院畢業(yè)實習(xí)管理-new-new課件
- 阻燃材料的阻燃機(jī)理建模
- PLC控制系統(tǒng)合同(2024版)
- CJT 511-2017 鑄鐵檢查井蓋
- ISO15189培訓(xùn)測試卷及答案
- JJG(交通) 171-2021 超聲式成孔質(zhì)量檢測儀檢定規(guī)程
- 氣象衛(wèi)星技術(shù)在軍事中的應(yīng)用
- 配電工作組配電網(wǎng)集中型饋線自動化技術(shù)規(guī)范編制說明
- 介入科圍手術(shù)期護(hù)理
- 化驗員個人自查自糾報告
- 食品良好操作規(guī)范(GMP)和食品衛(wèi)生標(biāo)準(zhǔn)操作程序(SSOP)課件
評論
0/150
提交評論