版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 目 錄</b></p><p><b> 第1章 緒論1</b></p><p> 1.1選題背景與意義1</p><p><b> 1.2選題目的1</b></p><p> 第2章 系統(tǒng)概述2</p><
2、;p> 2.1技術(shù)選擇依據(jù)2</p><p> 2.2JSP的技術(shù)原理2</p><p> 2.2.1JSP簡介2</p><p> 2.2.2JavaBean簡介3</p><p> 2.3MyEclipse平臺的搭建3</p><p><b> 2.4數(shù)據(jù)配置4</b&
3、gt;</p><p> 第3章 系統(tǒng)需求分析及總體設(shè)計(jì)4</p><p><b> 3.1需求分析4</b></p><p> 3.2系統(tǒng)功能模塊設(shè)計(jì)5</p><p><b> 3.3處理流程6</b></p><p> 第4章 數(shù)據(jù)庫設(shè)計(jì)7</
4、p><p> 4.1數(shù)據(jù)庫概念設(shè)計(jì)7</p><p> 4.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)9</p><p> 4.3數(shù)據(jù)庫之間的關(guān)系設(shè)計(jì)13</p><p> 4.4用JSP鏈接數(shù)據(jù)庫13</p><p> 第5章 系統(tǒng)詳細(xì)設(shè)計(jì)14</p><p> 5.1前臺部分14</p&
5、gt;<p> 5.1.1系統(tǒng)架構(gòu)設(shè)計(jì)14</p><p> 5.1.2.網(wǎng)站前臺首頁設(shè)計(jì)17</p><p> 5.1.3.會(huì)員管理模塊設(shè)計(jì)17</p><p> 5.1.4.會(huì)員資料修改模塊設(shè)計(jì)19</p><p> 5.1.5購物車模塊設(shè)計(jì)20</p><p> 5.1.6.收
6、銀臺模塊設(shè)計(jì)23</p><p> 5.2后臺部分23</p><p> 5.2.1后臺總體框架23</p><p> 5.2.2后臺登陸模塊設(shè)計(jì)25</p><p> 5.2.3商品管理模塊設(shè)計(jì)26</p><p> 5.2.4會(huì)員管理模塊設(shè)計(jì)30</p><p> 5
7、.2.5訂單管理模塊設(shè)計(jì)32</p><p> 5.2.6公告管理模塊設(shè)計(jì)33</p><p> 5.2.7退出系統(tǒng)模塊設(shè)計(jì)36</p><p><b> 結(jié) 論37</b></p><p><b> 致 謝38</b></p><p><b>
8、; 第1章 緒論</b></p><p> 1.1選題背景與意義</p><p> 伴隨著二十一世紀(jì)的到來,人們開啟了網(wǎng)絡(luò)時(shí)代的新紀(jì)元。人們的生活重心逐步的從現(xiàn)實(shí)生活向網(wǎng)絡(luò)的虛擬世界轉(zhuǎn)變。由于時(shí)代的不斷發(fā)展,人們的生活節(jié)奏也開始加快,人們的收入也有一定程度的提高。在滿足溫飽后,民眾就有了對于精神世界構(gòu)建的需求,所以現(xiàn)在的圖書銷售業(yè)正在蓬勃發(fā)展并且也會(huì)在以后的幾年內(nèi)不斷壯大
9、。但是在發(fā)展過程中不可避免的會(huì)存在這樣的幾個(gè)問題。</p><p> 對于快節(jié)奏生活的年輕人,學(xué)業(yè)繁重的學(xué)生一族,以及外出并不方便的老年人,對于這三大圖書消費(fèi)的主要群體來說出門的購書時(shí)間是限制消費(fèi)的最大問題。</p><p> 對于書店的經(jīng)營者來說,書店的經(jīng)營成本巨大,而且利潤相對較小,切市場的波動(dòng)大,對于各種書的銷量不容易準(zhǔn)確預(yù)測,鋪面的裝修、租用以及人員的雇傭和書籍的損壞折舊都會(huì)造
10、成不同程度的成本增加,從而對于書店的經(jīng)營造成一定的負(fù)擔(dān)。</p><p> 恰在此時(shí)電子商務(wù)技術(shù)應(yīng)運(yùn)而生,電子商務(wù)通過將信息技術(shù)和數(shù)據(jù)庫等技術(shù)相融合,構(gòu)建出了網(wǎng)上書店,從一定程度上打破了時(shí)間和空間的界限,讓生活本就忙碌的消費(fèi)者可以利用散碎的小時(shí)段來進(jìn)行選購。這樣就解決了書店經(jīng)營尷尬的第一個(gè)癥結(jié)。網(wǎng)上書店的發(fā)展空間大,因?yàn)閳D書的內(nèi)外特征都天然的契合著網(wǎng)絡(luò),是一種非常適合實(shí)現(xiàn)互聯(lián)網(wǎng)銷售的商品。</p>
11、<p> 建設(shè)一個(gè)如當(dāng)當(dāng)網(wǎng)的綜合性、品種豐富、庫存充足的大型網(wǎng)絡(luò)書店,不僅可以共用實(shí)體書店的供貨渠道和物流關(guān)系,利用互聯(lián)網(wǎng)獨(dú)特的延伸性,實(shí)現(xiàn)對于客源和商品的延伸,創(chuàng)造出實(shí)體店很難甚至不能開發(fā)出的新的商業(yè)機(jī)會(huì)。</p><p><b> 1.2選題目的</b></p><p> 當(dāng)下社會(huì)溫飽已經(jīng)不再是大部分人生活的目的,而上層建設(shè)的建設(shè)則是很多人們的迫
12、切需求。當(dāng)人們滿足了基本的生存需要之后,就開始了對知識以及思想的追求。但是過于快速的生活節(jié)奏和工作壓力,使得人們沒有便利的條件穿過幾個(gè)街區(qū),到書店選購圖書。</p><p> 網(wǎng)上書店則利用了信息技術(shù)和網(wǎng)絡(luò)技術(shù),這樣一個(gè)如今滲透到每一個(gè)家庭的新興技術(shù)來解決了這樣的問題。這樣的網(wǎng)上書城會(huì)致力于讓顧客有良好的購物體驗(yàn),提供好的售后服務(wù),充分發(fā)揮B2C經(jīng)營模式的優(yōu)勢,緊跟發(fā)展的腳步。電子商務(wù)的大概念下包含了電子商務(wù)網(wǎng)
13、站這樣的一個(gè)組成部分,相較于傳統(tǒng)商務(wù),電子商務(wù)網(wǎng)站主要在以下幾個(gè)方面有優(yōu)勢:</p><p> 可通過在網(wǎng)絡(luò)途徑進(jìn)行分析采購,在采購過程中可以省去大部分人的費(fèi)用,從而降低了采購的成本;</p><p> 可以通過類似于阿里巴巴、或者是與廠家直接溝通的方式實(shí)現(xiàn)低庫存,甚至是“零庫存”的管理方式,這樣就大大的縮短了資金鏈,縮短了資金的周轉(zhuǎn)周期;</p><p>
14、網(wǎng)上銷售更有利于開發(fā)市場無地域限制,同樣虛擬經(jīng)營也能實(shí)現(xiàn)24小時(shí)全天營業(yè),有增加收入;</p><p> 可以利用網(wǎng)站內(nèi)的廣告位置進(jìn)行廣告招商,這樣可以回收一部分成本增加額外收入。</p><p> 跟隨著時(shí)代的腳步,伴隨著信息技術(shù)和網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,電子商務(wù)的興起似乎是必然的選擇,而且作用范圍會(huì)越來越廣闊。</p><p><b> 第2章 系統(tǒng)
15、概述</b></p><p><b> 2.1技術(shù)選擇依據(jù)</b></p><p> JSP是基于SUN公司推出的新一代腳本技術(shù)——基于 Java的動(dòng)態(tài)網(wǎng)頁技術(shù),用于支持和創(chuàng)建跨硬件平臺和Web服務(wù)器的網(wǎng)頁。JSP與微軟公司出品的Active Sever Pages(ASP)相比較,JSP利用了Java強(qiáng)大的苦啊平臺性,不論是在Windows NT20
16、00還是在Linux下都能正常運(yùn)行而且高效率執(zhí)行的特點(diǎn)更加突出。</p><p> 因?yàn)楝F(xiàn)在的網(wǎng)站更新以及維護(hù)頻率很快,而JSP技術(shù)可以讓W(xué)eb開發(fā)人員和設(shè)計(jì)人員輕松容易的實(shí)現(xiàn)這樣操作,特別是目前的商業(yè)系統(tǒng)。作為包含于Java中的一個(gè)部分,它能夠從系統(tǒng)內(nèi)容中將用戶界面分離出來,快速的開發(fā)出基于Web并且能夠相對于平臺獨(dú)立的程序。</p><p> 2.2JSP的技術(shù)原理</p&g
17、t;<p> 2.2.1JSP簡介</p><p> Sun公司倡導(dǎo),許多公司參與共同構(gòu)建的動(dòng)態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn)——JSP。JSP逐漸成為網(wǎng)絡(luò)技術(shù)上的主流開發(fā)工具的主要原因是他在Java的基礎(chǔ)上實(shí)現(xiàn)了動(dòng)態(tài)網(wǎng)頁與靜態(tài)網(wǎng)頁分離,從而擺脫了硬件平臺的束縛。</p><p> Java Servlet 2.1 API 的擴(kuò)展是基于Java Servlet 和整個(gè)Java體系的web
18、開發(fā)技術(shù),并且完全解決了之前腳本級執(zhí)行的通病。</p><p> 2.2.2JavaBean簡介</p><p> JavaBean是一種基于Java的軟件組件,JavaBean和Active控件一樣,可以通過封裝業(yè)務(wù)邏輯建立一整套可重復(fù)利用的對象庫。JSP對于在Web應(yīng)用中集成JavaBean組件提供了完善的支持,這種支持不僅能縮短開發(fā)時(shí)間(可以直接利用經(jīng)過測試和可信任的已有組件),
19、避免重復(fù)開發(fā),也為JSP應(yīng)用帶來了更多的可伸縮性。JavaBean組件可以用來執(zhí)行復(fù)雜的計(jì)算任務(wù),或負(fù)責(zé)與數(shù)據(jù)庫的交互及數(shù)據(jù)提取等。</p><p> 由于Java語言在這些方面所具有的特點(diǎn)和優(yōu)勢,使得基于它的軟件JavaBean組件技術(shù)倍受人們關(guān)注。它的任務(wù)就是:一次編寫,可以在任何地方執(zhí)行,可以在任何地方重用。JavaBean組件可以在任何地方重用包括了可以在應(yīng)用程序、其他組件、文檔、Web站點(diǎn)和應(yīng)用程序構(gòu)
20、造器工具等多種方案中再利用。</p><p> 為了創(chuàng)建和使用Java軟件組件,JavaBean被實(shí)現(xiàn)為一種獨(dú)立于平臺和結(jié)構(gòu)的應(yīng)用程序接口,它的實(shí)現(xiàn)可以忽略內(nèi)部的結(jié)構(gòu)和細(xì)節(jié)問題,只需定義其外部的特征及對外功能就行。其中,屬性、方法和事件三種接口可以獨(dú)立對外進(jìn)行開發(fā)。</p><p> 2.3MyEclipse平臺的搭建</p><p> MyEclipse企業(yè)
21、級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對Eclipse IDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布,以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML, Struts, JSP, CSS, Javascript, SQL, Hibernate。</p>
22、;<p> 對于每一種功能上的類別,在Eclipse中都有相應(yīng)的功能部件,并通過一系列的插件來實(shí)現(xiàn)它們。MyEclipse結(jié)構(gòu)上的這種模塊化,可以讓我們在不影響其他模塊的情況下,對任一模塊進(jìn)行單獨(dú)的擴(kuò)展和升級。</p><p> 簡單而言,MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的J2EE集成開發(fā)環(huán)境,支持代碼編寫、配置、測試以及除錯(cuò),MyEclipse6.0以前版本需先安裝E
23、clipse。</p><p> MyEclipse6.0以后版本安裝時(shí)不需安裝Eclipse。我用的是MyEclipse8.5,所以直接安裝后配置即可以使用了。安裝過程在單擊MyEclipseKeyGen.exe運(yùn)行程序后,按照提示就可以正確安裝了,在此就不贅述了。</p><p> 安裝完MyEclipse后打開應(yīng)用程序,在菜單欄可看到MyEclipse一項(xiàng), 下面的工具欄中可看到
24、MyEclipse的Tomcat圖標(biāo)。然后就可以進(jìn)行JDK的相關(guān)配置。從菜單欄中進(jìn)入“Windows --> Preferences”,打開Preference對話框進(jìn)行JDK的配置,在左側(cè)欄中選擇“Java --> Installed JREs”,按“Add”按鈕進(jìn)行添加;在彈出的“Add JRE”對話框中,選擇JRE的目錄,這里是C:\Program Files\Genuitec\Common\binary\com.su
25、n.java. jdk.win32.x86_1.6.0.013,在JRE名稱一欄中,填下想取的名稱,我這里叫“Sun JDK 1.6.0_13”, 然后“OK”確定,返回到設(shè)置框中,將剛剛配置的JRE選中。</p><p> 開始正式配置Tomcat。左側(cè)MyEclipse節(jié)點(diǎn)下“Application Server”中有Tomcat,選擇自己安裝的版本,我這里是Tomcat6.x,在對話框中,將Tomcat
26、Server設(shè)為“Enable”,并設(shè)置Tomcat的安裝目錄,我這里是D:\Program Files\apache-tomcat -6.0.14,其它的框會(huì)自動(dòng)填充,在Tomcat的JDK中選擇剛剛配置的JDK,這里是Sun JDK 1.6.0_13,點(diǎn)擊Apply按鈕,配置就完成了。</p><p><b> 2.4數(shù)據(jù)配置</b></p><p> JDB
27、C驅(qū)動(dòng)程序是獨(dú)立于數(shù)據(jù)庫系統(tǒng)的,但幾乎所有的數(shù)據(jù)庫系統(tǒng)都有自己的私有協(xié)議,用來與客戶端應(yīng)用程序通信。所以JDBC驅(qū)動(dòng)程序可以部分的利用這些已有上網(wǎng)數(shù)據(jù)庫引擎。按照J(rèn)DBC對這些數(shù)據(jù)庫引擎的依賴程度,可以分為四類:JDBC-ODBC橋、通過本地客戶機(jī)網(wǎng)絡(luò)代碼連接數(shù)據(jù)庫、通過中間件連接數(shù)據(jù)庫、與DBMS直接連接,我選擇的就是JDBC-ODBC橋。下面就簡述創(chuàng)建新數(shù)據(jù)源的步驟。</p><p> 首先,要定義一個(gè)數(shù)據(jù)
28、庫名稱(DSN)。打開“開始-->設(shè)置-->控制面板-->管理工具-->數(shù)據(jù)源(ODBC)”。在彈出的“ODBC數(shù)據(jù)源管理器”對話框中選擇“系統(tǒng)DSN”選項(xiàng)卡,單擊“添加”按紐,選擇“SQL Server”為數(shù)據(jù)庫驅(qū)動(dòng)程序,單擊“完成”按紐。然后在彈出的“創(chuàng)建SQL Server的新數(shù)據(jù)源”對話框的“數(shù)據(jù)源名稱”文本框輸入“db_shop”,在“描述”文本框中可以寫上數(shù)據(jù)庫的功能。在“服務(wù)器”下拉列表中選擇要連接
29、的SQL Server,此處要安裝的本地服務(wù)器,所以選擇“l(fā)ocal”即可。單擊“下一步”按鈕,選擇“使用用戶輸入登錄ID和密碼的SQL Server驗(yàn)證”單選按鈕,“登錄ID”默認(rèn)為“sa”,密碼為空。單擊“下一步”按鈕,在下拉列表中選擇該數(shù)據(jù)庫的數(shù)據(jù)庫為“db_shop”。單擊“下一步”按鈕,再單擊“完成”按鈕,在“ODBC Microsoft SQL Server 安裝”對話框中單擊“確定”即可。</p><p
30、> 第3章 系統(tǒng)需求分析及總體設(shè)計(jì)</p><p><b> 3.1需求分析</b></p><p> 此基于JSP的購物網(wǎng)站分前臺功能和后臺功能:</p><p> 前臺部分由用戶使用,主要包括新品上架、特價(jià)商品、銷售排行、購物車、會(huì)員管理、商品公告及訂單查詢、商品查詢等。</p><p> 后臺部分由
31、管理員使用,主要包括對商城內(nèi)的一些基礎(chǔ)數(shù)據(jù)進(jìn)行有效管理,包括商品管理、會(huì)員管理、訂單管理、公告管理等</p><p> 3.2系統(tǒng)功能模塊設(shè)計(jì)</p><p> 電子商務(wù)系統(tǒng)前臺功能結(jié)構(gòu)如圖3.1所示。</p><p> 圖3.1 系統(tǒng)前臺功能結(jié)構(gòu)圖</p><p> 電子商務(wù)系統(tǒng)后臺功能結(jié)構(gòu)如圖3.2所示。</p>
32、<p> 圖3.2 系統(tǒng)后臺功能結(jié)構(gòu)圖</p><p><b> 3.3處理流程</b></p><p> 系統(tǒng)前臺處理業(yè)務(wù)流程如圖3.3所示</p><p> 圖3.3前臺業(yè)務(wù)流程圖</p><p><b> 第4章 數(shù)據(jù)庫設(shè)計(jì)</b></p><p>
33、; 4.1數(shù)據(jù)庫概念設(shè)計(jì)</p><p> 根據(jù)以上各節(jié)對系統(tǒng)所做的需求分析和系統(tǒng)設(shè)計(jì),規(guī)劃本系統(tǒng)中使用的數(shù)據(jù)庫試題分別為商品大類別實(shí)體、商品小類別實(shí)體、商品實(shí)體、會(huì)員實(shí)體、會(huì)員訂單實(shí)體、會(huì)員訂單明細(xì)實(shí)體、管理員信息實(shí)體、公告信息實(shí)體和友情鏈接實(shí)體。下面分別介紹幾個(gè)關(guān)鍵實(shí)體的E-R圖。</p><p><b> ?。?)管理員實(shí)體</b></p>&
34、lt;p> 管理員信息包括管理員編號、管理員登錄名稱、管理員登陸密碼屬性。管理員不能再網(wǎng)站上注冊生產(chǎn),只能直接在數(shù)據(jù)庫里直接添加,其E-R圖如圖4.1所示</p><p> 圖4.1管理員的E-R圖</p><p><b> (2)商品實(shí)體</b></p><p> 商品信息包括自動(dòng)生產(chǎn)的商品編號、類別編號、商品名稱、商品介紹、商
35、品定價(jià)、商品現(xiàn)價(jià)、商品圖片、錄入時(shí)間、是否新品、是否特價(jià)和瀏覽次數(shù)屬性。商品實(shí)體的E-R圖如圖4.2所示。</p><p> 圖4.2商品的E-R圖</p><p><b> ?。?)會(huì)員實(shí)體</b></p><p> 會(huì)員信息包括自動(dòng)生成的會(huì)員編號、登錄賬號、登錄密碼、真實(shí)姓名、所在城市、聯(lián)系地址、郵政編碼、證件號碼、證件類型、等級、消費(fèi)
36、額、電話、電子郵箱、是否凍結(jié)屬性,會(huì)員的E-R圖如圖4.3所示。</p><p> 圖4.3會(huì)員的E-R圖</p><p><b> ?。?)訂單實(shí)體</b></p><p> 訂單信息包括訂單編號、品種數(shù)、訂貨人賬號、訂貨人真實(shí)姓名、訂貨人地址、訂貨人郵政編碼、訂貨人電話、付款方式、運(yùn)送方式、折扣、訂貨時(shí)間、訂貨是否執(zhí)行及備注屬性。其中訂
37、貨是否執(zhí)行信息中,1代表貨物已經(jīng)發(fā)送出去,0代表貨物沒有發(fā)送出去。會(huì)員訂單的E-R圖如圖4.4所示。</p><p> 圖4.4訂單的E-R圖</p><p> 4.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 本系統(tǒng)數(shù)據(jù)庫采用SQL Server 2000數(shù)據(jù)庫,系統(tǒng)數(shù)據(jù)庫名稱為db_shop,共包含9張表,下面給出主要數(shù)據(jù)表的結(jié)構(gòu)。</p><
38、;p> ?。?)tb_superType(商品大分類信息表)</p><p> 商品大分類信息表主要用來保存商品類別中大的類別信息。表tb_superType的結(jié)構(gòu)如表4.1所示。</p><p> 表4.1表tb_superType的結(jié)構(gòu)</p><p> (2)tb_subType(商品小分類信息表)</p><p> 商品
39、小分類信息表主要用來保存商品類別中小的類別信息。表tb_subType的結(jié)構(gòu)如表4.2所示。</p><p> 表4.2表tb_subType的結(jié)構(gòu)</p><p> ?。?)tb_rebate(折扣表)</p><p> 折扣表用來保存顧客在購買商品時(shí)的折扣信息。表tb_rebate的結(jié)構(gòu)如表4.3所示。</p><p> 表4.3表
40、tb_rebate的結(jié)構(gòu)</p><p> ?。?)tb_order_detail(訂單明細(xì)表)</p><p> 訂單明細(xì)表用來保存訂單的詳細(xì)信息。表tb_order_detail的結(jié)構(gòu)如表3.4所示。</p><p> 表3.4表tb_order_detail的結(jié)構(gòu)</p><p> (5)tb_order(訂單信息主表)</
41、p><p> 訂單信息主表用來保存訂單的概要信息。表tb_order的結(jié)構(gòu)如表4.5所示。</p><p> 表4.5表tb_order的結(jié)構(gòu)</p><p> ?。?)tb_member(會(huì)員信息表)</p><p> 會(huì)員信息表主要用來存儲所注冊的會(huì)員的信息。表tb_member的結(jié)構(gòu)如表4.6所示。</p><p&
42、gt; 表4.6表tb_member的結(jié)構(gòu)</p><p> (7)tb_manager(管理員信息表)</p><p> 管理員信息表用來保存管理員信息。表tb_manager的結(jié)構(gòu)如表4.7所示。</p><p> 表4.7表tb_manager的結(jié)構(gòu)</p><p> ?。?)tb_goods(商品信息表)</p>
43、<p> 商品信息表主要用來保存商品信息。表tb_goods的結(jié)構(gòu)如表4.8所示。</p><p> 表4.8表tb_goods的結(jié)構(gòu)</p><p> (9)tb_BBS(公告信息表)</p><p> 公告信息表主要用來保存商城的公告信息。表tb_BBS的結(jié)構(gòu)如表4.9所示。</p><p> 表4.9表tb_BBS
44、的結(jié)構(gòu)</p><p> 4.3數(shù)據(jù)庫之間的關(guān)系設(shè)計(jì)</p><p> 圖4.5清晰的表達(dá)了各個(gè)數(shù)據(jù)庫之間的關(guān)系,反映了系統(tǒng)各個(gè)實(shí)體之間的關(guān)系。</p><p> 4.4用JSP鏈接數(shù)據(jù)庫</p><p> 在JSP中可以使用Java的JDBC技術(shù),實(shí)現(xiàn)對數(shù)據(jù)庫中表記錄的查詢、修改和刪除等操作。JDBC技術(shù)在JSP中占有很重要的位置。
45、JDBC(Java DataBase Connectivity)是Java數(shù)據(jù)庫連接API。簡單地說,JDBC能完成三件事:</p><p> 與一個(gè)數(shù)據(jù)庫建立連接</p><p> 向數(shù)據(jù)庫發(fā)送SQL語句</p><p> 處理數(shù)據(jù)庫返回的結(jié)果</p><p> JavaBean是一種Java語言寫成的可重用組件。為寫成JavaBe
46、an,類必須是具體的和公共的,并且具有無參數(shù)的構(gòu)造器。JavaBean通過提供符合一致性設(shè)計(jì)模式的公共方法將內(nèi)部域暴露成為屬性。眾所周知,屬性名稱符合這種模式,其他Java類可以通過自省機(jī)制發(fā)現(xiàn)和操作這些JavaBean屬性。</p><p> 用戶可以使用JavaBean將功能、處理、值、數(shù)據(jù)庫訪問和其他任何可以用Java代碼創(chuàng)造的對象進(jìn)行打包,并且其他的開發(fā)者可以通過內(nèi)部的JSP頁面、Servlet、其他J
47、avaBean、Applet程序或應(yīng)用來使用這些對象。用戶可以認(rèn)為JavaBean提供了一種隨時(shí)隨地的復(fù)制和粘貼的功能,而不用關(guān)心任何改變。</p><p> JSP的一個(gè)重要特性就是可以用JavaBean實(shí)現(xiàn)功能的擴(kuò)展。將大部分功能放在JavaBean中完成,以使JSP頁面程序更干凈簡潔、利于維護(hù)。JavaBean可以很方便的用來捕獲頁面表單的輸入并完成各種業(yè)務(wù)邏輯的處理。</p><p&
48、gt; 連接數(shù)據(jù)庫的JavaBean—ConnDB。通過JSP頁面調(diào)用此JavaBean,可以實(shí)現(xiàn)對數(shù)據(jù)庫的連接,數(shù)據(jù)表的添加、刪除、更新等操作。</p><p> 編譯及使用JavaBean</p><p> 例如用JDK的javac命令編譯ConnDB.java,得到ConnDB.class文件,即表示建立了一個(gè)JavaBean。在JSP頁面中要使用這個(gè)JavaBean,先使用語
49、句:<%@ page import="com.wgh.DB.connDB" %>,通過該引用就可以實(shí)現(xiàn)Bean中相關(guān)功能函數(shù),這樣就可以方便的完成對數(shù)據(jù)庫的增、刪、改和查詢等操作。</p><p> 第5章 系統(tǒng)詳細(xì)設(shè)計(jì)</p><p><b> 5.1前臺部分</b></p><p> 5.1.1系統(tǒng)架構(gòu)
50、設(shè)計(jì)</p><p> 前臺部分由用戶使用,主要包括新品上架、特價(jià)商品、銷售排行、購物車、會(huì)員管理、商品公告及訂單查詢、商品查詢等。</p><p><b> ?。?)模塊功能介紹</b></p><p> 新品上架:在首頁展示幾條上架新品的商品信息,點(diǎn)擊進(jìn)該模塊后展示更多新上架商品。</p><p> 特價(jià)商品:
51、在首頁展示幾條特價(jià)商品信息,點(diǎn)擊進(jìn)該模塊后展示更多特價(jià)商品。</p><p> 銷售排行:統(tǒng)計(jì)銷售數(shù)量再按統(tǒng)計(jì)后的銷售數(shù)量降序排列。</p><p> 購物車:和實(shí)際生活中的購物車一樣,用于暫時(shí)保存挑選的商品。</p><p> 會(huì)員管理:包括會(huì)員注冊、會(huì)員登錄、會(huì)員資料修改三部分。</p><p> 商品查詢:在首頁選擇需要查詢的商
52、品種類,查看該類別的全部商品信息,然后單擊商品名稱查看相應(yīng)商品的詳細(xì)信息。</p><p><b> ?。?)前臺文件組成</b></p><p> 首頁組成圖如圖5.1所示。</p><p><b> 圖5.1首頁組成圖</b></p><p> 導(dǎo)航欄組成圖如圖5.2所示。</p&g
53、t;<p> 圖5.2 導(dǎo)航欄組成圖</p><p> 左側(cè)頁面組成圖如圖5.3所示。</p><p> 圖5.3 左側(cè)頁面組成圖</p><p> 購物車組成圖如圖5.4所示。</p><p> 圖5.4 購物車組成圖</p><p> 5.1.2.網(wǎng)站前臺首頁設(shè)計(jì)</p>
54、<p> 在Go購電子商城的首頁中,用戶不但可以在第一時(shí)間內(nèi)掌握商城推出的特價(jià)商品、上架新品、最新公告等,還可以查看銷售排行、搜索指定商品、商品分類查詢等。Go購電子商城前臺首頁的運(yùn)行結(jié)果如圖5.5所示。</p><p> 圖5.5 網(wǎng)站前臺首頁的運(yùn)行結(jié)果</p><p> 下面以列表形式給出前臺頁面各部分的說明信息,如表5.1所示。</p><p&
55、gt; 表5.1前臺頁面說明</p><p> 5.1.3.會(huì)員管理模塊設(shè)計(jì)</p><p> 在前臺的會(huì)員管理模塊中主要包括會(huì)員注冊、會(huì)員登錄、會(huì)員資料修改3部分。由于會(huì)員資料修改同會(huì)員注冊的實(shí)現(xiàn)方法類似,只是調(diào)用的SQL語句不同,所以此處只給出會(huì)員注冊和會(huì)員登錄進(jìn)行介紹。</p><p><b> 1.會(huì)員注冊</b></p&
56、gt;<p> 會(huì)員注冊的入口位于網(wǎng)站首頁的左側(cè)。用戶單擊【注冊】按鈕即可進(jìn)入到會(huì)員注冊頁面Login_U.jsp。會(huì)員注冊模塊由兩個(gè)頁面組成,一個(gè)是用于收集用戶輸入的注冊信息的會(huì)員注冊頁面register.jsp,該頁面主要由各個(gè)表單元素組成,用于提示用戶填寫注冊信息,在用戶名的填寫框旁還有一個(gè)checkUserName.jsp的鏈接,可以先檢測用戶名是否可用再繼續(xù)填寫下面的信息。另一個(gè)用于將會(huì)員注冊信息保存到數(shù)據(jù)表中
57、的處理頁register_deal.jsp,當(dāng)用戶名已存在就彈出“該用戶名已存在,請重新注冊!”的提示,并將頁面重定向到注冊頁面;如果用戶名不存在則使用member.java中的member類保存客戶端輸入的會(huì)員信息,再通過調(diào)用memberDaoImpl.java中的insert()方法將會(huì)員信息保存到會(huì)員信息表中,如果插入成功則提示“用戶注冊成功!”,否則提示“用戶注冊失??!”。[9]其流程圖如圖5.6所示。</p>&
58、lt;p> 圖 5.6用戶注冊系統(tǒng)流程圖</p><p><b> 2.會(huì)員登錄</b></p><p> 會(huì)員登錄用于網(wǎng)站會(huì)員登錄本網(wǎng)站進(jìn)行購物或查看訂單情況。</p><p> 會(huì)員登錄入口位于網(wǎng)站首頁的左側(cè),當(dāng)用戶在登錄頁面Login_U.jsp中輸入用戶名和密碼后,單擊【登錄】按鈕,系統(tǒng)將對輸入的用戶名和密碼進(jìn)行驗(yàn)證,如果
59、用戶輸入的用戶名存在并且凍結(jié)字段的值不為1,則判斷用戶輸入的密碼是否正確,如果密碼正確,則重新進(jìn)入網(wǎng)站首頁,顯示登錄用戶的用戶名、【修改資料】按鈕、【退出登錄】按鈕,否則提示登錄失敗。[10]但無論失敗還是成功都將頁面重定向到主頁面index.jsp。</p><p> 其流程圖如圖5.7所示。</p><p> 圖5.7 用戶登錄流程圖</p><p> 5
60、.1.4.會(huì)員資料修改模塊設(shè)計(jì)</p><p> 個(gè)人資料修改模塊在前臺主頁的導(dǎo)航條上,單擊“會(huì)員資料修改”鏈接,進(jìn)入用戶資料修改頁面modifyMember.jsp,該頁面主要給用戶修改用戶信息,用戶只有在登錄后才有權(quán)限修改個(gè)人資料信息。</p><p> 個(gè)人信息填寫完畢后單擊“修改”,則調(diào)用member.java中的member類保存客戶端更新的會(huì)員信息,再通過調(diào)用memberD
61、aoImpl.java中的update()方法將會(huì)員信息保存到會(huì)員信息表中,再在modifyMember_deal.jsp判斷用戶信息是否成功更新,如果更新成功則提示“會(huì)員信息修改成功!”,否則提示“會(huì)員信息修改失敗!”。[11]</p><p> 個(gè)人資料修改模塊流程圖如圖5.8所示。</p><p> 圖 5.8 個(gè)人資料修改模塊流程圖</p><p>
62、5.1.5購物車模塊設(shè)計(jì)</p><p> 購物車模塊中,主要包含以下幾個(gè)功能,即:添加購物車、查看購物車、生成訂單和清空購物車。</p><p><b> 1.添加至購物車</b></p><p> 添加購物車就是把用戶選中的商品暫時(shí)存放在購物車中。當(dāng)用戶在首頁或商品詳情展示頁面goods_detail.jsp中單擊 “購買”按鈕時(shí),運(yùn)
63、行cart_add.jsp頁面將商品的信息從數(shù)據(jù)庫調(diào)出來,再重定向到購物車頁面cart_see.jsp,便將該商品放入購物車中并查看。</p><p> 添加商品的代碼流程是從session中讀取cart對象,如果為空則說明還沒有進(jìn)行購物或者已經(jīng)清空了購物車,需要新建購物車對象;將商品名稱與購物車列表中的商品名稱對比,如果已經(jīng)存在,則把商品數(shù)量加1。</p><p> 在這段代碼流程中
64、,還使用了集合類型。集合類型在Java中又稱為向量,是一元集合,可以加入重復(fù)數(shù)據(jù),它的作用和數(shù)組相同,可以保存一系列數(shù)據(jù),但集合類型也有它獨(dú)特的優(yōu)點(diǎn),就是可以方便地對集合內(nèi)的數(shù)據(jù)進(jìn)行查找、增加、刪除和修改等操作。</p><p><b> 2.查看購物車</b></p><p> 為了方便用戶隨時(shí)查看購物情況,在網(wǎng)站的首頁加入了查看購物車的鏈接,通過它可以將用戶所
65、有選中的商品信息放入購物車中顯示出來。</p><p> 首先要判斷用戶是否登錄和購物車是否為空,如果用戶沒登陸,則提示用戶還沒登陸,然后跳轉(zhuǎn)到主頁面;如果購物成為空,則跳轉(zhuǎn)到cart_null.jsp頁面,告訴用戶購物車為空,可以單擊其間的“我要購買商品”按鈕跳轉(zhuǎn)去主頁面選購商品。進(jìn)入到非空的購物車頁面cart_see.jsp,則可以將保存在session中的購物信息利用for語句輸出到瀏覽器中,同時(shí)根據(jù)商品
66、的現(xiàn)價(jià)、購買數(shù)量自動(dòng)計(jì)算每種商品的金額和購物車中全部商品的合計(jì)金額。</p><p> 在查看購物車頁面還提供了“繼續(xù)購物”去首頁index.jsp、“去收銀臺結(jié)賬”去cart_checkout.jsp頁面、“清空購物車”去cart_clear.jsp頁面和“修改數(shù)量”的鏈接,可以執(zhí)行接下來要執(zhí)行的操作。</p><p> 3.修改購物車中指定商品的購買數(shù)量</p>&l
67、t;p> 購物車中還需加入修改商品數(shù)量的功能才合理。在購物車中,由于商品的數(shù)量被存放在文本框中,用戶只有在某種商品后面的文本框中輸入相應(yīng)的數(shù)量即可。購物車頁面中的“修改數(shù)量”超鏈接是為確保修改購買數(shù)量而設(shè)置的。</p><p> 具體有兩種方法可以修改商品數(shù)量,一種就是用戶可以在cart_clear.jsp頁面文本框中輸入想要購買的數(shù)量,然后單擊“修改”按鈕?!靶薷摹钡膱?zhí)行是在cart_modify.j
68、sp頁面中,根據(jù)用戶的輸入修改商品數(shù)量,完成修改后再自動(dòng)重定向到cart_see.jsp頁面;另一種就是購物車中已經(jīng)加入了某種商品,然后去商品信息頁面繼續(xù)購買這種商品,商品數(shù)量就會(huì)加1,也達(dá)到了修改的目的。</p><p> 4.從購物車中移去指定商品</p><p> 如果欲刪除該商品,可以在數(shù)量文本框里輸入“0”,并需要單擊“修改”按鈕來更新購物車中商品的數(shù)量,也可以直接點(diǎn)擊商品“
69、退回”項(xiàng)對應(yīng)的圖標(biāo)到cart_move.jsp頁面執(zhí)行刪除操作后再重定向到cart_see.jsp頁面,刪除即完成。系統(tǒng)每次只會(huì)將1個(gè)商品放入購物車中,如果用戶需要多個(gè)同種商品,可以通過修改商品信息右側(cè)相應(yīng)文本框的值來完成。</p><p><b> 5.清空購物車</b></p><p> 清空購物車是指當(dāng)用戶訂單生成后,倘若還想繼續(xù)購物一定要清空購物車再進(jìn)行選
70、購商品,這樣防止重復(fù)購物,而且不想要購物車中的物品時(shí),也可以單擊“清空購物車”來一次性刪除全部商品,方便快捷。其實(shí)清空購物車實(shí)現(xiàn)起來非常簡單,在cart_clear.jsp頁面中將session中存儲的cart對象清空,再重定向到cart_null.jsp頁面,此時(shí)可以點(diǎn)擊其間的“我要去購物”按鈕去主頁面選購商品。[12]</p><p> 圖5.9購物車模塊流程圖</p><p>
71、5.1.6.收銀臺模塊設(shè)計(jì)</p><p> 生成訂單時(shí)網(wǎng)上購物商城的最終目的,前面所有功能的實(shí)現(xiàn)都是為最后生成一個(gè)用戶滿意的訂單作基礎(chǔ),在此要生成一個(gè)可供用戶隨時(shí)查詢的訂單號,還要保存用戶訂單中所購買的商品信息。當(dāng)用戶確認(rèn)對購物車內(nèi)商品不再改變以后,就可以到收銀臺結(jié)帳并生成訂單。結(jié)帳的流程為:從購物車cart_see.jsp頁面中單擊“去收銀臺結(jié)賬”,跳轉(zhuǎn)到cart_checkout.jsp頁面,系統(tǒng)用戶登錄
72、名到數(shù)據(jù)庫tb_member表中提取用戶的基本信息展示在頁面,在用戶自己選擇付款方式、運(yùn)送方式、填寫備注后單擊“提交”按鈕,如果必填項(xiàng)都填寫了,就跳轉(zhuǎn)到cart_order.jsp頁面,否則提示用戶數(shù)據(jù)不完整。在跳轉(zhuǎn)過程中系統(tǒng)根據(jù)用戶的消費(fèi)等級在tb_rebate表中級得出相應(yīng)折扣值,再將相應(yīng)數(shù)據(jù)插入數(shù)據(jù)庫中的訂單表tb_order中并生成訂單號、訂單明細(xì)表tb_order_detail表,并更新用戶tb_member表的消費(fèi)額,修改用
73、戶的消費(fèi)等級,方便下次購物時(shí)計(jì)算折扣。如果其間那里沒完成,就提示訂單生成失敗,否則就彈出提示成功生成訂單,然后跳轉(zhuǎn)到主頁面index.jsp。</p><p> 在生成訂單模塊中主要使用了調(diào)出用戶信息并生成唯一訂單號,調(diào)出用戶信息就是完全的對數(shù)據(jù)庫進(jìn)行操作,利用session對象把登錄后的用戶名保存起來,在訂單生成時(shí)把保存的用戶名從數(shù)據(jù)庫的用戶標(biāo)中取出即可;生成唯一訂單號方法有很多,只要確保訂單號碼的唯一性及方
74、便用戶記錄以便于查詢自己訂單的執(zhí)行狀態(tài)即可。[13]</p><p><b> 5.2后臺部分</b></p><p> 5.2.1后臺總體框架</p><p> 后臺部分由管理員使用,主要包括對商城內(nèi)的一些基礎(chǔ)數(shù)據(jù)進(jìn)行有效管理,包括商品管理、會(huì)員管理、訂單管理、公告管理等。</p><p><b>
75、1.功能模塊介紹 </b></p><p> 商品管理:實(shí)現(xiàn)對商品信息的管理,包括分頁顯示商品信息、添加商品信息、修改商品信息、刪除商品信息等功能。</p><p> 會(huì)員管理:主要是查看會(huì)員基本信息和對于經(jīng)常失信的會(huì)員解凍或凍結(jié)。</p><p> 訂單管理:主要是執(zhí)行訂單和查看訂單的詳細(xì)信息,但不能修改訂單信息。</p><
76、p> 公告管理:主要是查看公告信息、添加公告信息和刪除公告信息。</p><p><b> 2.后臺文件結(jié)構(gòu)</b></p><p> 系統(tǒng)后臺文件結(jié)構(gòu),如圖5.10所示。</p><p> 圖5.10 后臺文件組成圖</p><p> 5.2.2后臺登陸模塊設(shè)計(jì)</p><p>
77、 在系統(tǒng)前臺首頁的底部提供了后臺管理員入口,通過該入口可以進(jìn)入到后臺登錄頁面manage/Login_M.jsp。在該頁面,管理員通過輸入正確的用戶名和密碼即可登錄到系統(tǒng)后臺首頁manage/index.jsp。當(dāng)用戶沒有輸入用戶名或密碼為空,系統(tǒng)都將通過check.js中的checkM()進(jìn)行判斷并給予提示信息,否則進(jìn)入到管理員登錄處理頁驗(yàn)證用戶信息。</p><p> 1.設(shè)計(jì)管理員登錄界面</p&
78、gt;<p> 管理員登錄頁面主要實(shí)現(xiàn)收集用戶輸入信息及通過JavaScript的自定義函數(shù)驗(yàn)證用戶身份。管理員登錄頁面所涉及的重要表單元素如表5.2所示。</p><p> 表5.2 管理員登錄頁面所涉及的重要表單元素</p><p> 2.編寫用戶身份驗(yàn)證的JSP處理頁</p><p> 當(dāng)用戶在登錄窗口中輸入用戶名和密碼后,單擊“確認(rèn)”按
79、鈕,系統(tǒng)將在manage/Login_M_deal.jsp頁面對輸入的用戶名和密碼進(jìn)行驗(yàn)證:如果用戶輸入的用戶名存在,則判斷用戶名輸入的密碼是否正確,如果密碼也正確,則進(jìn)入到網(wǎng)站后臺首頁,這時(shí)管理員才可以對系統(tǒng)后臺進(jìn)行管理,否則就回到前臺的首頁。</p><p> 其流程圖如圖5.11所示: </p><p> 圖5.11管理員登錄系統(tǒng)流程圖</p><p>
80、 為了防止一些不法份子蓄意破壞,需要為網(wǎng)站后臺設(shè)計(jì)用于驗(yàn)證用戶身份的文件manage/safe.jsp,在網(wǎng)站后臺頁面中都加入<jsp:include page=”safe”/>語句,這樣當(dāng)管理員沒有正常登錄時(shí),會(huì)彈出“您還沒有登錄”的提示對話框,然后返回網(wǎng)站首頁。</p><p> 5.2.3商品管理模塊設(shè)計(jì)</p><p> Go購電子商城系統(tǒng)的商品管理模塊主要實(shí)現(xiàn)對商
81、品信息的管理,包括分頁顯示商品信息、管理商品分類、添加商品信息、修改商品信息、刪除商品信息等功能。下面分別進(jìn)行介紹。</p><p> 1.分頁顯示商品信息</p><p> 商品管理模塊的首頁manage/index.jsp是分頁顯示商品信息,主要用于將商品信息表中的商品信息以列表的方式顯示,并為之添加“修改”和“刪除”功能,方便管理員對商品信息進(jìn)行修改和刪除。</p>
82、<p> 在分頁顯示商品信息頁面中主要顯示商品名稱、簡介、是否新品、是否特價(jià)等信息,至于商品的其他信息,可以單擊商品名稱進(jìn)入到商品詳細(xì)信息頁面manage/goods_detail.jsp查看。</p><p> 要分頁顯示商品信息,首先要從數(shù)據(jù)表中查詢出商品信息。實(shí)現(xiàn)商品查詢的代碼比較簡單,只需使用page指令的import屬性將數(shù)據(jù)庫操作的JavaBean引到當(dāng)前頁面中,再創(chuàng)建并實(shí)例化conn
83、DB的一個(gè)對象“conn”,最好執(zhí)行“conn”的executeQuery的方法即可實(shí)現(xiàn)。</p><p><b> 2.管理商品分類</b></p><p> 在商品顯示頁面分別提供了大分類小分類信息管理的鏈接。</p><p> 點(diǎn)擊“大分類信息管理”就到跳轉(zhuǎn)到manage/superType.jsp頁面。在該頁面以列表的形式顯示大商
84、品類別,可以進(jìn)行刪除操作。當(dāng)你選擇一個(gè)類別然后單擊刪除,則在super_Del_deal.jsp中會(huì)進(jìn)行判斷,如果大類別下還有小類別,則會(huì)提示刪除小類別才能刪除大類別,否則會(huì)提示刪除成功,然后跳轉(zhuǎn)到manage/superType.jsp。其中還設(shè)置了一個(gè)“全選/反選”的復(fù)選框,可以全選或全不選大分類名。頁面右上角還提供了一個(gè)添加商品分類的鏈接,點(diǎn)進(jìn)去就進(jìn)入manage/super_add.jsp頁面,輸入類名后點(diǎn)擊“保存”,就在其中的
85、JavaScript腳本mycheck()進(jìn)行判斷,如果為空就出現(xiàn)提示框,否則進(jìn)入manage/superType_add_deal.jsp頁面再進(jìn)行判斷類名是否已經(jīng)存在、是否添加成功。</p><p> 點(diǎn)擊“小分類信息管理”就跳轉(zhuǎn)到manage/subType.jsp頁面。在該頁面以列表的形式顯示大類別和小類別,也可以進(jìn)行刪除操作。當(dāng)你選擇一個(gè)小類別然后單擊刪除,則在subType_Del_deal.jsp
86、中會(huì)進(jìn)行判斷,是否刪除成功,然后跳轉(zhuǎn)到manage/subType.jsp。其中還設(shè)置了一個(gè)“全選/反選”的復(fù)選框,可以全選或全不選大分類名。頁面右上角還提供了一個(gè)添加商品分類的鏈接,點(diǎn)進(jìn)去就進(jìn)入manage/sub_add.jsp頁面,先要選擇大類別,再輸入小分類名后點(diǎn)擊“保存”,就在其中的JavaScript腳本mycheck()進(jìn)行判斷,如果為空就出現(xiàn)提示框,否則進(jìn)入manage/subType_add_deal.jsp頁面再進(jìn)行
87、判斷小類名是否已經(jīng)存在、是否添加成功。</p><p><b> 3.添加商品信息</b></p><p> 在商品管理首頁中單擊“添加商品信息”即可進(jìn)入到添加商品信息頁面manage/goods_add.jsp。添加商品信息頁面主要用于向數(shù)據(jù)庫中添加新的商品信息。</p><p> (1)制作添加商品信息頁面,該頁面主要用于收集用戶添加
88、的商品信息和驗(yàn)證用戶的輸入信息是否合法。</p><p> 添加商品信息頁面所涉及的重要表單元素如表5.3所示。</p><p> 表.3 管理員登錄頁面所涉及的重要表單元素</p><p> 將商品信息分為兩個(gè)類別(即大分類和小分類)。同時(shí)將商品的兩個(gè)類別設(shè)置為級聯(lián)菜單,即當(dāng)管理員選定商品大類后,在商品小類的下拉列表中將顯示出數(shù)據(jù)庫中的該類別的子類信息,這時(shí)
89、管理員即可很方便地選擇商品的所屬分類。</p><p> 首先創(chuàng)建顯示商品大分類的結(jié)果集,并將大分類中的第一個(gè)分類設(shè)置了小分類列表框的父類的默認(rèn)值。然后將大分類中的第一個(gè)分類設(shè)置了小分類列表框的父類的默認(rèn)值,并通過下拉列表顯示商品大分類信息。當(dāng)用戶改變下拉列表框的值時(shí),調(diào)用JavaScript函數(shù)解決用戶刷新表單時(shí)下拉列表框恢復(fù)默認(rèn)值的情況。</p><p> (2)制作添加商品信息處
90、理頁面。</p><p> 當(dāng)用戶輸入信息單擊保存后就進(jìn)入manage/superType_Del_deal.jsp頁面,判斷商品是否已存在,如果不存在則使用JavaBean中的goods類保存客戶端輸入的商品信息,再通過調(diào)用GoodsDaoImpl中的insert方法將商品信息保存到商品信息表中。其流程圖如圖5.12所示。</p><p> 圖 5.12 添加商品信息模塊流程圖<
91、;/p><p><b> 4.修改商品信息</b></p><p> 在商品管理首頁中單擊想要修改的商品信息后面的修改圖標(biāo),即可進(jìn)入到修改商品信息頁面manage/goods_modify.jsp,該頁面主要用于修改指定商品的基本信息。</p><p> ?。?)制作修改商品信息頁面。修改商品信息頁面同添加商品信息類似,只是在收集商品修改信息頁
92、面中需要為每個(gè)表單元素賦初值。</p><p> 從上面可以看出如何為text類型的表單元素賦值,但是并不能看出如何為radio表單元素單選按鈕賦值。radio表單元素的默認(rèn)值是通過其checked屬性控制的。下面給出“是否新品”單選按鈕組的代碼:</p><p> <input name="newGoods" type="radio" c
93、lass="noborder" value="1"<%if(newgoods==1){out.print(" checked");}%>>是</p><p> <input name="newGoods" type="radio" class="noborder" va
94、lue="0"<%if(newgoods==0){out.print(" checked");}%>>否</p><p> 從上面的代碼中可以看出,當(dāng)商品為新品時(shí)“是”按鈕被選中,否則選中“否”按鈕。</p><p> ?。?)制作修改商品處理頁面。修改商品信息的處理頁manage/goods_modify_deal.jsp同添加
95、商品信息的處理頁類似,只是在修改商品信息頁中需要調(diào)用GoodsDaoImpl中的update方法修改商品信息。</p><p><b> 5.刪除商品信息</b></p><p> 在商品管理首頁中單擊想要?jiǎng)h除的商品信息后面的刪除圖標(biāo)即可進(jìn)入到刪除商品信息頁面manage/goods_del.jsp。該頁面也主要用于刪除指定商品的基本信息。</p>
96、<p> (1)制作刪除商品信息頁面。在制作刪除商品信息頁面時(shí),首先也需要判斷從商品管理首頁傳遞的參數(shù)ID是否為空,如果為空值,則說明用戶不是正常操作,需要將頁面重定向到manage/index.jsp頁面,否則才根據(jù)參數(shù)ID查詢商品的基本信息并顯示在頁面中。實(shí)現(xiàn)該功能的流程圖同修改商品信息的類似,這里不再贅述。</p><p> ?。?)制作刪除商品信息的處理頁。刪除商品信息的處理頁也是通過Java
97、Bean“GoodsDaoImpl”實(shí)現(xiàn),只是此處需要調(diào)用其刪除方法delete()。</p><p> 5.2.4會(huì)員管理模塊設(shè)計(jì)</p><p> 單擊后臺導(dǎo)航條中的“會(huì)員管理”即可進(jìn)入到會(huì)員信息管理首頁manage/membermanage.jsp。對于會(huì)員信息的管理主要是查看會(huì)員基本信息和對于經(jīng)常失信的會(huì)員給予凍結(jié)或解凍,但對于會(huì)員密碼管理員是無權(quán)查看的。</p>
98、<p> 查看會(huì)員基本信息manage/member_detail.jsp頁面的實(shí)現(xiàn)方法同商品管理模塊中分頁顯示商品信息類似,這里不再贅述。下面介紹如何凍結(jié)會(huì)員和對已經(jīng)被凍結(jié)的會(huì)員進(jìn)行解凍。</p><p> 在會(huì)員信息表tb_member中,除了包括用戶基本信息字段外,還包括一個(gè)標(biāo)記會(huì)員信息是否被凍結(jié)的字段freeze,該字段為int型,默認(rèn)值為0,該字段被規(guī)定值只有0和1兩個(gè),0代表未被凍結(jié),
99、1代表已經(jīng)被凍結(jié)。由此可見,實(shí)現(xiàn)凍結(jié)用戶只需將該會(huì)員的freeze字段值置為1,實(shí)現(xiàn)解凍只需將freeze字段的值置為0。</p><p> 當(dāng)要凍結(jié)會(huì)員,點(diǎn)擊“凍結(jié)/解凍”項(xiàng)對應(yīng)的圖標(biāo),然后就進(jìn)入manage/member_freeze.jsp頁面,并更新數(shù)據(jù)庫中會(huì)員的信息,然后提示已成功凍結(jié)會(huì)員,跳轉(zhuǎn)回會(huì)員管理頁面否則提示凍結(jié)失敗。</p><p> 當(dāng)要解凍會(huì)員,點(diǎn)擊“凍結(jié)/解凍
100、”項(xiàng)對應(yīng)的圖標(biāo),然后就進(jìn)入manage/member_thaw.jsp頁面,并更新數(shù)據(jù)庫中會(huì)員的信息,然后提示已成功解凍會(huì)員,跳轉(zhuǎn)回會(huì)員管理頁面,否則提示解凍失敗。其流程圖如圖5.13所示。</p><p> 圖5.13會(huì)員管理流程圖</p><p> 5.2.5訂單管理模塊設(shè)計(jì)</p><p> 單擊后臺導(dǎo)航條中的“訂單管理”即可進(jìn)入到訂單信息管理首頁man
101、age/ordermanage.jsp對于訂單的管理主要執(zhí)行訂單和查看訂單的詳細(xì)信息,但不能修改訂單信息。訂單管理首頁主要用于分頁顯示訂單概要信息、執(zhí)行訂單和提供查看訂單詳細(xì)信息的接口。</p><p> 分頁顯示訂單概要信息 </p><p> 分頁顯示訂單概要信息的實(shí)現(xiàn)過程同分頁顯示商品信息類似,所不同的是在訂單列表的執(zhí)行列中需要根據(jù)訂單的狀態(tài)顯示不同的信息,如果訂單已被執(zhí)行,則顯
102、示“已執(zhí)行”文字,否則提供執(zhí)行訂單的圖標(biāo)。</p><p> 2.查看訂單的詳細(xì)信息</p><p> 制作查看訂單的詳細(xì)信息頁面manage/order_detail.jsp時(shí),首先通過訂單管理首頁傳遞的訂單編號在訂單主表tb_order中查詢訂單的主信息,然后通過視圖V_order_detail查詢訂單的詳細(xì)信息,再顯示到頁面即可。</p><p><
103、b> 3.執(zhí)行訂單</b></p><p> 用戶在網(wǎng)站前臺購物并到收銀臺結(jié)賬生產(chǎn)訂單后,還需要執(zhí)行訂單。訂單的狀態(tài)分為將商品送到客戶手中和通過銀行或其他方式收取貨款兩個(gè)步驟。這時(shí)需通過manage/order_enforce.jsp頁面將訂單的狀態(tài)改為已執(zhí)行狀態(tài)。在訂單主表tb_order中有一個(gè)用于標(biāo)示訂單是否執(zhí)行的字段enforce,該字段的默認(rèn)值為0 代表訂單沒有執(zhí)行,值為1代表訂單
104、已經(jīng)被執(zhí)行。由此可見要執(zhí)行某份訂單只需將其enforce字段的值修改為1即可,流程圖如圖5.14所示。</p><p> 圖 5.14 訂單信息管理模塊流程圖</p><p> 5.2.6公告管理模塊設(shè)計(jì)</p><p> 單擊后臺導(dǎo)航條中的“公告管理”即可進(jìn)入到公告管理首頁manage/placardmanage.jsp。對于公告的管理主要是查看公告信息、添
105、加公告信息和刪除公告信息。由于公告信息涉及到發(fā)布公告的時(shí)間,所以沒有修改公告信息的功能。</p><p> 由于公告信息屬于即時(shí)信息,需保證其時(shí)效性,所以當(dāng)公告內(nèi)容過期后需及時(shí)將其刪除。而且公告信息的刪除可以設(shè)置為批量刪除,即可以將選中的信息一次性刪除。實(shí)現(xiàn)該功能主要通過在每條公告信息后加入一個(gè)復(fù)選框,并在所以記錄的最下面添加一個(gè)控制其“全選/反選”的復(fù)選框。</p><p> 當(dāng)用戶
106、單擊“刪除”超級鏈接時(shí),還需要判斷用戶是否選擇了要?jiǎng)h除的記錄,如果是,則提示“是否刪除”;否則提示“請選擇要?jiǎng)h除的記錄”,這可以通過調(diào)用JavaScript的自定義函數(shù)checkdel()實(shí)現(xiàn)。當(dāng)用戶確定要?jiǎng)h除所選中的記錄后,會(huì)將頁面提交到刪除公告信息處理頁面placard_Del_deal.jsp刪除選中的記錄,提示是否刪除成功,然后跳轉(zhuǎn)回公告管理頁面。</p><p> 在公告管理首頁中單擊“添加公告信息”
107、超級鏈接時(shí),則跳轉(zhuǎn)到manage/placard_add.jsp頁面,當(dāng)管理員輸入公告標(biāo)題和內(nèi)容后單擊保存,先判斷標(biāo)題和內(nèi)容是否為空,為空則彈出提示框,否則就進(jìn)入manage/superType_Del_deal.jsp頁面,判斷商品是否已存在,如果不存在則使用JavaBean中的placard類保存輸入的商公告信息,再通過調(diào)用Placard DaoImpl中的insert方法將商品信息保存到商品信息表中。其流程圖如圖5.15所示。&l
108、t;/p><p> 圖5.15公告管理模塊的流程圖</p><p> 5.2.7退出系統(tǒng)模塊設(shè)計(jì)</p><p> 網(wǎng)站后臺對于整個(gè)網(wǎng)站的正常運(yùn)行起著至關(guān)重要的作用。當(dāng)管理員對網(wǎng)站維護(hù)工作完成后,必須退出系統(tǒng)。實(shí)現(xiàn)退出網(wǎng)站后臺只需要在單擊“退出后臺”超級鏈接時(shí),進(jìn)入logout.jsp頁面主要是將保存有管理員信息的session變量清空,并將頁面重定向到網(wǎng)站前臺首
109、頁。關(guān)鍵代碼如下:</p><p><b> <%</b></p><p> session.invalidate();</p><p> response.sendRedirect("../index.jsp");</p><p><b> %></b>&l
110、t;/p><p><b> 結(jié) 論</b></p><p> 現(xiàn)在越來越多的中小型企業(yè)已經(jīng)成為未來經(jīng)濟(jì)增長的關(guān)鍵動(dòng)力。企業(yè)的發(fā)展需要跟隨現(xiàn)代科技的進(jìn)步。建設(shè)一個(gè)具有電子商務(wù)功能的網(wǎng)站不僅能打破時(shí)空的界限,而且能有效的降低銷售成本,提高企業(yè)的競爭能力。因此設(shè)計(jì)并開發(fā)一個(gè)具有電子商務(wù)功能的門戶網(wǎng)站具有非常重要的意義。</p><p> 通過這次
111、本科畢業(yè)設(shè)計(jì),使我對網(wǎng)站開發(fā)有了更為深刻的理解,積累了一定的網(wǎng)站建設(shè)經(jīng)驗(yàn)。雖然在以前的項(xiàng)目實(shí)訓(xùn)中接觸了網(wǎng)頁登陸界面等的制作,但是只是比較單一頁面的設(shè)計(jì),沒有綜合成一個(gè)完整的應(yīng)用項(xiàng)目的各情況。而在這次畢業(yè)設(shè)計(jì)中,通過實(shí)際調(diào)查研究與編寫程序,使自己理論與實(shí)踐結(jié)合 ,熟悉了編程環(huán)境的配置及使用,掌握了一些社會(huì)經(jīng)驗(yàn)和編程經(jīng)驗(yàn),對自己今后的工作和學(xué)習(xí)有著良好的促進(jìn)作用。在開發(fā)過程中遇到了許多不可預(yù)知的困難,但最終在老師好同學(xué)的幫助下一一解決了,在
112、解決了各種難題的同時(shí),我也學(xué)到了許多技術(shù)知識和開發(fā)技巧,相信這些知識和技巧將在我以后的工作和學(xué)習(xí)中發(fā)揮作用。</p><p> 在這三個(gè)月時(shí)間里,在我的不懈努力和老師同學(xué)們的幫助下,我完成了此次畢業(yè)設(shè)計(jì),但更重要的是對已學(xué)知識的回顧,對未學(xué)知識的學(xué)習(xí)與累積,通過調(diào)研階段的系統(tǒng)學(xué)習(xí),以及在后來設(shè)計(jì)過程中對細(xì)枝末節(jié)的補(bǔ)充和技巧的掌握,是我受益匪淺。但另一方面,我也發(fā)現(xiàn)有很多的需要學(xué)習(xí)與掌握,在IT行業(yè)里,技術(shù)日新月
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- java網(wǎng)上書店大學(xué)設(shè)計(jì)(含源文件)
- 基于java的網(wǎng)上書店系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(含源文件)
- 基于struts的網(wǎng)上書店設(shè)計(jì)畢業(yè)論文(含源文件)
- 基于struts框架的網(wǎng)上書店畢業(yè)論文(含源文件)
- 2017畢業(yè)論文-基于java的網(wǎng)上書店系統(tǒng)設(shè)計(jì)
- 基于java_web_ssh框架的網(wǎng)上書店大學(xué)論文
- 網(wǎng)上書店畢業(yè)論文---網(wǎng)上書店系統(tǒng)
- 基于.net網(wǎng)上書店.net網(wǎng)上書店
- 基于.net網(wǎng)上書店論文
- 基于web的網(wǎng)上書店系統(tǒng)的開發(fā)
- 基于java手機(jī)游戲論文(含源文件)
- 基于java的酒店管理系統(tǒng)論文(含源文件)
- 基于java的酒店管理系統(tǒng)論文(含源文件)
- 基于java的圖書管理系統(tǒng)的開發(fā)(含源文件)
- 基于JSP技術(shù)的網(wǎng)上書店的開發(fā)與實(shí)現(xiàn).pdf
- 基于php的網(wǎng)上書店的設(shè)計(jì)(論文)
- jsp網(wǎng)上書店——論文
- 論文——網(wǎng)上書店 (3)
- 基于java的bbs論壇設(shè)計(jì)畢業(yè)論文(含源文件)
- 基于jsp的網(wǎng)上書店畢業(yè)論文
評論
0/150
提交評論