

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 電子商務(wù)是一種依托現(xiàn)代信息技術(shù)和網(wǎng)絡(luò)技術(shù),集金融電子化、管理信息化、商貿(mào)信息網(wǎng)絡(luò)化為一體,旨在實(shí)現(xiàn)物流、資金流與信息流和諧統(tǒng)一的新型貿(mào)易方式。隨著網(wǎng)絡(luò)技術(shù)和應(yīng)用需求的發(fā)展,許多網(wǎng)站建立了電子商務(wù)平臺(tái),為企業(yè)之間、以及企業(yè)與會(huì)員之間提供了各種方便快捷的交易途徑。電子商務(wù)被眾多商家和企業(yè)作為提高企業(yè)核心競(jìng)爭(zhēng)力的一個(gè)重要手段;
2、而網(wǎng)上購(gòu)物系統(tǒng)作為電子商務(wù)的一個(gè)重要組成,已成為研究與應(yīng)用的熱點(diǎn)。</p><p> 本文討論了電子商務(wù)與網(wǎng)上購(gòu)物系統(tǒng)的基本概念,分析了國(guó)內(nèi)外研究現(xiàn)狀與發(fā)展動(dòng)態(tài),研究了網(wǎng)上購(gòu)物系統(tǒng)的實(shí)現(xiàn)方法與技術(shù);在此基礎(chǔ)上,將理論知識(shí)與開(kāi)發(fā)技術(shù)運(yùn)用到系統(tǒng)的實(shí)現(xiàn)過(guò)程當(dāng)中,完成了網(wǎng)上購(gòu)物系統(tǒng)的開(kāi)發(fā)。</p><p> 網(wǎng)上購(gòu)物系統(tǒng)開(kāi)發(fā)遵照軟件工程流程,經(jīng)歷了系統(tǒng)需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與測(cè)試。
3、重點(diǎn)分析了網(wǎng)上購(gòu)物系統(tǒng)的可行性、系統(tǒng)需求;設(shè)計(jì)了系統(tǒng)的用例圖、活動(dòng)圖、層次架構(gòu)模型、系統(tǒng)架構(gòu)模型和系統(tǒng)的功能。系統(tǒng)從數(shù)據(jù)庫(kù)基本內(nèi)容入手,開(kāi)發(fā)實(shí)現(xiàn)了基于JSP的網(wǎng)上購(gòu)物系統(tǒng),包括會(huì)員登錄注冊(cè)模塊、在線會(huì)員管理模塊、在線商品銷售模塊、在線后臺(tái)管理模塊。其中,在線商品銷售模塊是核心,實(shí)現(xiàn)庫(kù)房中的商品管理,及管理會(huì)員的購(gòu)物車,從而實(shí)現(xiàn)結(jié)帳等一系列功能。系統(tǒng)測(cè)試表明,基于JSP實(shí)現(xiàn)的本系統(tǒng)訪問(wèn)速度較快,安全性較好,有很強(qiáng)的實(shí)用性;系統(tǒng)功能完備,使
4、用方便簡(jiǎn)捷,界面人性化,節(jié)省經(jīng)營(yíng)成本,大大減少了操作人員的工作負(fù)擔(dān)。</p><p> 關(guān)鍵詞:電子商務(wù) 購(gòu)物系統(tǒng) 數(shù)據(jù)庫(kù)管理 JSP WEB應(yīng)用</p><p><b> 目錄</b></p><p><b> 第一章 緒 論1</b></p><p> 1.1 課題背景1</
5、p><p> 1.2 課題的目的和意義1</p><p><b> 1.3主要工作1</b></p><p> 第二章 相關(guān)技術(shù)和可行性分析2</p><p> 2.1 系統(tǒng)的技術(shù)介紹2</p><p> 2.1.1 JSP 技術(shù)介紹2</p><p>
6、2.1.2 Tomcat 6.0 介紹2</p><p> 2.1.3 SQL Server 2005 介紹3</p><p> 2.1.4 JDBC 介紹4</p><p> 2.2 系統(tǒng)開(kāi)發(fā)平臺(tái)及運(yùn)行環(huán)境4</p><p> 2.2.1 系統(tǒng)開(kāi)發(fā)平臺(tái)4</p><p> 2.2.2 運(yùn)行環(huán)境4
7、</p><p> 第三章 系統(tǒng)分析5</p><p> 3.1 可行性分析5</p><p> 3.1.1 社會(huì)可行性5</p><p> 3.1.2 技術(shù)可行性5</p><p> 3.2 系統(tǒng)需求分析6</p><p> 3.3 平臺(tái)功能分析7</p>
8、<p> 3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)8</p><p> 3.4.1數(shù)據(jù)庫(kù)表分析8</p><p> 第四章 系統(tǒng)前臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)11</p><p> 4.1 前臺(tái)功能設(shè)計(jì)11</p><p> 4.2 通用文件設(shè)計(jì)11</p><p> 4.3 首頁(yè)設(shè)計(jì)12</p><
9、;p> 4.3.1首頁(yè)中間部分12</p><p> 4.4 網(wǎng)站會(huì)員設(shè)計(jì)13</p><p> 4.4.1 會(huì)員注冊(cè)13</p><p> 4.4.2 會(huì)員登錄15</p><p> 4.4.3 會(huì)員信息管理18</p><p> 4.4.3 會(huì)員查詢商品信息設(shè)計(jì)18</p>
10、<p> 4.5 會(huì)員購(gòu)物設(shè)計(jì)19</p><p> 4.5.1 購(gòu)物車設(shè)計(jì)20</p><p> 4.5.2 會(huì)員購(gòu)物訂單設(shè)計(jì)21</p><p> 4.5.3 生成訂單22</p><p> 4.5.4 查看生成訂單23</p><p> 第五章 購(gòu)物后臺(tái)設(shè)計(jì)與實(shí)現(xiàn)24<
11、;/p><p> 5.1 后臺(tái)登錄界面和主頁(yè)面界面設(shè)計(jì)24</p><p> 5.1.1 后登錄界面的設(shè)計(jì)25</p><p> 5.1.2 后臺(tái)主頁(yè)的設(shè)計(jì)26</p><p> 5.2 訂單信息查看27</p><p> 5.3 管理員模塊28</p><p> 5.4 生產(chǎn)
12、單位資料管理29</p><p> 5.5 商品資料管理30</p><p> 5.5.1 瀏覽商品資料31</p><p> 5.5.2 增加商品資料31</p><p> 5.5.3 修改商品資料32</p><p> 5.6 網(wǎng)站人員的管理32</p><p> 第
13、六章 總結(jié)與展望34</p><p><b> 致謝35</b></p><p><b> 參考文獻(xiàn)36</b></p><p><b> 第一章 緒 論</b></p><p><b> 1.1 課題背景</b></p>&l
14、t;p> 因特網(wǎng)的迅猛發(fā)展正以前所未有的深度和廣度影響和改變著人類生活的各個(gè)方面,而現(xiàn)在人們對(duì)于互聯(lián)網(wǎng)技術(shù)的要求已不單單是瀏覽一下網(wǎng)站網(wǎng)頁(yè),收發(fā)電子郵件,日益忙碌的人們開(kāi)始追求足不出戶就能買到心儀的商品,是越來(lái)越多的上網(wǎng)愛(ài)好者實(shí)現(xiàn)購(gòu)物的一種方式。對(duì)于商家來(lái)說(shuō),擁有一個(gè)屬于自己的網(wǎng)站是至關(guān)重要的。</p><p> 網(wǎng)上購(gòu)物系統(tǒng)是一種新興的能夠?qū)崿F(xiàn)在線交互的商業(yè)信息系統(tǒng),它主要向會(huì)員提供靜態(tài)以及動(dòng)態(tài)的信息
15、資源,靜態(tài)信息是指不經(jīng)常更新的資源,如公司的簡(jiǎn)介、規(guī)范、制度等;動(dòng)態(tài)信息指變化的信息,如公告信息、商品報(bào)價(jià)等。網(wǎng)上購(gòu)物系統(tǒng)有強(qiáng)大的在線交互功能,使的商家和會(huì)員可以方便的傳遞信息,完成交易。這種新型的交易方式實(shí)現(xiàn)了公司間文檔與資金的無(wú)紙化交易。</p><p> 1.2 課題的目的和意義</p><p> 鑒于互聯(lián)網(wǎng)的優(yōu)勢(shì)以及對(duì)國(guó)內(nèi)外相關(guān)電子商務(wù)網(wǎng)站現(xiàn)狀的研究分析,我決定以基于Web的購(gòu)
16、物電子商務(wù)網(wǎng)站開(kāi)發(fā)作為我的畢業(yè)設(shè)計(jì)主題。立足于設(shè)計(jì)一個(gè)在網(wǎng)絡(luò)平臺(tái)上運(yùn)行的集購(gòu)物、支付和配送等功能于一體的無(wú)店鋪購(gòu)物,以小小的力量推動(dòng)中國(guó)互聯(lián)網(wǎng)的發(fā)展。</p><p><b> 1.3主要工作</b></p><p> 這個(gè)網(wǎng)上購(gòu)物系統(tǒng)所需要的功能從會(huì)員角度進(jìn)行劃分,可以分為前臺(tái)會(huì)員功能和后臺(tái)管理功能。會(huì)員功能主要提供給購(gòu)物的會(huì)員使用,包括會(huì)員的注冊(cè)、登錄,購(gòu)物車
17、,查看訂單等;后臺(tái)管理功能主要提供給系統(tǒng)的管理人員使用,包括對(duì)會(huì)員、商品、訂單的管理。會(huì)員注冊(cè)后,登陸網(wǎng)站的會(huì)員可以在線查看、訂購(gòu)產(chǎn)品,并可在論壇中與其他會(huì)員進(jìn)行交流及提出意見(jiàn)等。這些部分用JSP設(shè)計(jì)頁(yè)面及連接,使用數(shù)據(jù)庫(kù)來(lái)建立相關(guān)的表,以便于對(duì)其進(jìn)行查看、修改或刪除。在網(wǎng)站設(shè)計(jì)中,管理員完成對(duì)網(wǎng)站的維護(hù)與管理的工作。使用數(shù)據(jù)庫(kù)中權(quán)限的功能對(duì)管理員設(shè)置權(quán)限,管理員可以對(duì)商品信息進(jìn)行新增,修改及刪除,也可以對(duì)訂單信息進(jìn)行處理,同時(shí)管理員也
18、可以對(duì)會(huì)員信息進(jìn)行管理。</p><p> 第二章 相關(guān)技術(shù)和可行性分析</p><p> 2.1 系統(tǒng)的技術(shù)介紹</p><p> 本系統(tǒng)所涉及的技術(shù)主要有以 Java 語(yǔ)言為核心的 JSP(Java Server Pages)技術(shù)進(jìn)行實(shí)現(xiàn)業(yè)務(wù)實(shí)現(xiàn),開(kāi)發(fā)工具為 MyEclipse,后臺(tái)的服務(wù)支撐部分為應(yīng)用服務(wù)器Tomca 6.0以及數(shù)據(jù)庫(kù)服務(wù)器 SQL Se
19、rver 2005。以下將對(duì)主要技術(shù)作簡(jiǎn)明的介紹。</p><p> 2.1.1 JSP 技術(shù)介紹</p><p> JSP是由Sun公司在Java語(yǔ)言的基礎(chǔ)上開(kāi)發(fā)出來(lái)的一種動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù),其將標(biāo)記<% %>插入到頁(yè)面中,從而使網(wǎng)頁(yè)中的靜態(tài)部分和動(dòng)態(tài)部分分離開(kāi)來(lái)。JSP是類似ASP的一種技術(shù),在傳統(tǒng)的靜態(tài)網(wǎng)頁(yè)HTML文件插入Java程序段和JSP標(biāo)記,就形成了JSP文件。
20、</p><p> JSP技術(shù)的強(qiáng)勢(shì)在于:</p><p> 1、一次編寫(xiě),到處運(yùn)行。在更換系統(tǒng)時(shí),代碼不需要做任何修改。</p><p> 2、系統(tǒng)的多平臺(tái)支持?;旧峡梢栽谒衅脚_(tái)上的任意環(huán)境下開(kāi)發(fā),在任意環(huán)境中進(jìn)行系統(tǒng)部署,在任意環(huán)境中擴(kuò)展。</p><p> 3、強(qiáng)大的可伸縮性。通過(guò)小小的jar文件運(yùn)行servlet/JSP,
21、到由多臺(tái)服務(wù)器進(jìn)行集群和負(fù)載均衡,到多臺(tái)Application進(jìn)行事務(wù)處理,一臺(tái)服務(wù)器到無(wú)數(shù)臺(tái)服務(wù)器,JSP表現(xiàn)了強(qiáng)大的可伸縮性。</p><p> 4、多樣化和功能強(qiáng)大的開(kāi)發(fā)工具支持,常用的編輯工具有Dreamweaver和MyEclipse等。</p><p> 2.1.2 Tomcat 6.0 介紹</p><p> Tomcat 由Apache 組織開(kāi)
22、發(fā)的一種常用 Web 服務(wù)器,提供 Web 服務(wù)。一種 JSP 引擎,本身具有 Web 功能,可以作為獨(dú)立的 Web 服務(wù)器使用。但是,在作為 Web 服務(wù)器方面,Tomcat 處理靜態(tài) HTML 頁(yè)面時(shí)不如 Apache 迅速,也沒(méi)有Apache 健壯,一般選用 Tomcat 與 Apache 結(jié)合的方式,讓后者對(duì)網(wǎng)站的靜態(tài)頁(yè)面的請(qǐng)求提供服務(wù),而 Tomcat 作為專用的 JSP 引擎,提供 JSP 解析,得以更好的性能。</p
23、><p> 1、JDK 的安裝與配置</p><p> (1)找到 path 變量后單擊[編輯]按鈕;彈出[編輯系統(tǒng)變量]對(duì)話框。在[變 量值]文本框中輸入“c:\jdk\bin”,然后單擊[確定]按鈕。同時(shí)新建 CLASSPATH 變量;</p><p> (2)在[系統(tǒng)變量]選項(xiàng)組中單擊[新建]按鈕,在[變量名]文本框中輸入“CLASSPATH”, 在 [變量
24、值]文本框中輸入“ c:\jdk\lib\tools.jar ;c:\jdk\lib\dt.jar;”然后單擊[確定]按鈕。</p><p> (3)用同樣的方法把 c:\jdk 添加到 JAVA_HOME 環(huán)境變量中;</p><p> 2、TOMCAT 的安裝與配置</p><p> 在這里設(shè)默認(rèn)安裝目錄為 c:\Tomcat 安裝完畢,更改環(huán)境變量,用同
25、樣</p><p> 的方法把 c:\Tomcat 添加到 TOMCAT_HOME 環(huán)境變量中。啟動(dòng) Tomcat,在瀏覽器 的[地址]下拉列表框中輸入“http://localhost:8080/”,如果看到的是在左上 方有一只可愛(ài)的小貓,則表示 Tomcat 安裝成功。</p><p> 2.1.3 SQL Server 2005 介紹</p><p>
26、SQL Server 是美國(guó)Microsoft公司開(kāi)發(fā)的一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),是目前世界上最著名的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)之一。Microsoft SQL Server 2005在性能和可擴(kuò)展方面確立了世界領(lǐng)先的地位,是一套完全的數(shù)據(jù)庫(kù)和數(shù)據(jù)分析解決方案,使用戶可以快速創(chuàng)建下一代的可擴(kuò)展電子商務(wù)和數(shù)據(jù)倉(cāng)庫(kù)解決方案。Microsoft SQL Server 2005 在數(shù)據(jù)庫(kù)服務(wù)器自動(dòng)調(diào)整和自動(dòng)管理技術(shù)方面在數(shù)據(jù)庫(kù)領(lǐng)域中處于領(lǐng)先地位,使客戶
27、可以集中精力處理商業(yè)戰(zhàn)略上的問(wèn)題,而不是去細(xì)微調(diào)整數(shù)據(jù)庫(kù)服務(wù)器的各項(xiàng)參數(shù)。SQL Server 的主要功能:</p><p><b> 1、數(shù)據(jù)庫(kù)管理功能</b></p><p> 作為數(shù)據(jù)庫(kù)管理系統(tǒng),SQL Server 自然應(yīng)該具有數(shù)據(jù)庫(kù)管理功能。Microsoft SQL Server 2005的數(shù)據(jù)庫(kù)由包含數(shù)據(jù)的表集合和其他對(duì)象(如視圖、索引、存儲(chǔ)過(guò)程和觸
28、發(fā)器)組成,目的是為執(zhí)行與數(shù)據(jù)有關(guān)的活動(dòng)提供支持。存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)通常與特定的主題或過(guò)程相關(guān)。</p><p><b> 2、數(shù)據(jù)倉(cāng)庫(kù)功能</b></p><p> SQL Server 2005提供了一套全新的綜合分析服務(wù)系統(tǒng)。分析服務(wù)為商業(yè)活動(dòng)提供了集成的OLAP服務(wù)和數(shù)據(jù)挖掘功能。OLAP可以通過(guò)多維存儲(chǔ)技術(shù)對(duì)大型、復(fù)雜數(shù)據(jù)集執(zhí)行快速、高級(jí)的分析工作。數(shù)
29、據(jù)挖掘功能能夠揭示出隱藏在大量數(shù)據(jù)中的傾向及趨勢(shì)。SQL Server針對(duì)包括集成數(shù)據(jù)挖掘、OLAP服務(wù)、安全性服務(wù)及通過(guò)Internet對(duì)多維數(shù)據(jù)集進(jìn)行訪問(wèn)和鏈接分析提供新的數(shù)據(jù)倉(cāng)庫(kù)功能。</p><p><b> 3、網(wǎng)絡(luò)論壇</b></p><p> SQL Server 不僅提供網(wǎng)絡(luò)論壇所需的可伸縮性與可擴(kuò)展性之外,還提供了豐富的數(shù)據(jù)庫(kù)編程能力,以確保系統(tǒng)
30、的協(xié)同工作和靈活性。SQL Server2005 不僅支持集中化數(shù)據(jù)庫(kù)管理功能,而且還最大程度地實(shí)現(xiàn)了管理與優(yōu)化工作的自動(dòng)化,從而,減輕了有關(guān)管理人員的負(fù)擔(dān)。</p><p> 4、完備的 Web 功能</p><p> SQL Server2005允許通過(guò)HTTP協(xié)議,在 Web上進(jìn)行高性能、基于標(biāo)準(zhǔn)的安全訪問(wèn)?;赪eb的客戶端擁有訪問(wèn)關(guān)系型數(shù)據(jù)存儲(chǔ)和訪問(wèn)分析服務(wù)的能力。</
31、p><p> 2.1.4 JDBC 介紹</p><p> 數(shù)據(jù)庫(kù)管理是每個(gè)應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程中不得不考慮的問(wèn)題,目前主流的數(shù)據(jù)庫(kù)有Oracle、SqlServer、MySql等。不管使用何種技術(shù),都離不開(kāi)JDBC技術(shù)的支持。JDBC的全稱是Java DataBases Connectivity standard,即Java數(shù)據(jù)庫(kù)連接,是一種數(shù)據(jù)庫(kù)通用接口采用的主流技術(shù)。其定義了用來(lái)訪問(wèn)數(shù)據(jù)
32、庫(kù)源的標(biāo)準(zhǔn)Java類庫(kù),通過(guò)它使用一種標(biāo)準(zhǔn)方法,就能夠方便的訪問(wèn)數(shù)據(jù)庫(kù)資源。所以,JDBC又是一種規(guī)范,其目標(biāo)是使應(yīng)用程序開(kāi)發(fā)人員通過(guò)它連接任何提供JDBC驅(qū)動(dòng)程序的數(shù)據(jù)庫(kù)系統(tǒng),這樣就使得程序員無(wú)需對(duì)某種數(shù)據(jù)庫(kù)有過(guò)多的了解,大大加快了開(kāi)發(fā)過(guò)程。</p><p> 有了JDBC,向各種數(shù)據(jù)庫(kù)發(fā)送SQL語(yǔ)句就是一件再簡(jiǎn)單不過(guò)的事了。換言之,有了JDBC,就不必為訪問(wèn)數(shù)據(jù)庫(kù)A專門再寫(xiě)一個(gè)程序,又為訪問(wèn)數(shù)據(jù)庫(kù)B專門寫(xiě)一
33、個(gè)程序。所以,JDBC為Java應(yīng)用程序與各種不同數(shù)據(jù)庫(kù)之間進(jìn)行對(duì)話提供了一個(gè)標(biāo)準(zhǔn)的方法,這也是Java語(yǔ)言“一次編寫(xiě),到處運(yùn)行”的優(yōu)勢(shì)。</p><p> 2.2 系統(tǒng)開(kāi)發(fā)平臺(tái)及運(yùn)行環(huán)境</p><p> 2.2.1 系統(tǒng)開(kāi)發(fā)平臺(tái)</p><p> 操作系統(tǒng):Windows 系列操作系統(tǒng); 開(kāi)發(fā)工具:MyEclipse 8.5;</p><
34、;p> 應(yīng)用服務(wù)器:Tomcat 6.0; 數(shù)據(jù)庫(kù): SQL Server 2005;</p><p> 2.2.2 運(yùn)行環(huán)境</p><p> 操作系統(tǒng):Windows XP 或 Windows 7</p><p> 服務(wù)器軟件:Tomcat6.0</p><p> Java開(kāi)發(fā)工具:JDK 1.6.0</p>
35、<p> 瀏覽器:Internet Explorer6.0 及以上版本</p><p> 前臺(tái)開(kāi)發(fā)工具:MyEclipse 8.5</p><p> 后臺(tái)開(kāi)發(fā)工具:Microsoft SQL Server 2005</p><p><b> 第三章 系統(tǒng)分析</b></p><p><b>
36、 3.1 可行性分析</b></p><p> 可行性分析是在全面調(diào)查基礎(chǔ)上,針對(duì)新系統(tǒng)的開(kāi)發(fā)是否具備必要性和可能性,對(duì)新系統(tǒng)的開(kāi)發(fā)從技術(shù)、經(jīng)濟(jì)、運(yùn)行的方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)開(kāi)發(fā)成功??尚行匝芯渴菫榱擞米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否有解和是否值得求解,如果問(wèn)題的回答是肯定的,則通過(guò)客觀的論證分析確定系統(tǒng)開(kāi)發(fā)工程必須完成的目標(biāo),進(jìn)而準(zhǔn)確估計(jì)項(xiàng)目可行性,軟件規(guī)模以及項(xiàng)
37、目開(kāi)發(fā)成本效益等,并由此導(dǎo)出軟件項(xiàng)目的實(shí)施計(jì)劃??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決。這部分將從以下三個(gè)方面進(jìn)行研究:社會(huì)可行性、技術(shù)可行性、經(jīng)濟(jì)可行性。</p><p> 3.1.1 社會(huì)可行性</p><p> 隨著計(jì)算機(jī)技術(shù)的發(fā)展和網(wǎng)絡(luò)人口的增加,網(wǎng)絡(luò)世界也越來(lái)越廣博,越來(lái)越豐富,電子商務(wù)已經(jīng)成為網(wǎng)上的一股潮流。相信要不了太長(zhǎng)有時(shí)間,顧客就可以在
38、網(wǎng)絡(luò)世界上獲得他們?cè)诂F(xiàn)實(shí)世界上可以獲得的所有商品和服務(wù)。網(wǎng)上購(gòu)物系統(tǒng)主要目的是進(jìn)行網(wǎng)上購(gòu)物,并且嚴(yán)格按照國(guó)家法律法規(guī)來(lái)進(jìn)行研究和實(shí)踐,并無(wú)法律和政策方面的限制。</p><p> 3.1.2 技術(shù)可行性</p><p> 這次設(shè)計(jì)實(shí)現(xiàn)了一個(gè)網(wǎng)上購(gòu)物網(wǎng)站。網(wǎng)絡(luò)購(gòu)物中心所承載的信息量大、購(gòu)物流程比較繁瑣,而且互聯(lián)網(wǎng)中日益肆虐的黑客和病毒對(duì)網(wǎng)絡(luò)的安全性提出了更高的挑戰(zhàn)。本系統(tǒng)采用的是 JSP
39、、Servlet 和 SQL Server 2005 開(kāi)發(fā),Windows 2005 Server,用 Dreamweaver 8.0 進(jìn)行前臺(tái)網(wǎng)頁(yè)界面設(shè)計(jì)、采用 JDBC 方式與后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行連接,完成數(shù)據(jù)的添加、修改、刪除、查詢等功能。由于 JSP、Servlet 功能強(qiáng)大,具有很高的穩(wěn)定性和安全性,而 SQL Server 2005 靈活易維護(hù)在開(kāi)發(fā)方面具有方便快捷、使用靈活的特點(diǎn),以及目前的廣泛實(shí)際應(yīng)用,因此使用 JSP、Ser
40、vlet、SQL Server 2005 是開(kāi)發(fā)輕平臺(tái)的最佳組合從而說(shuō)明本系統(tǒng)在技術(shù)方面可行。網(wǎng)絡(luò)購(gòu)物中心真正實(shí)現(xiàn)了在 Internet 上的經(jīng)營(yíng)銷售,從而使其獲得更大的市場(chǎng)機(jī)遇及經(jīng)濟(jì)效益,很大程度地提高了企業(yè)的核心競(jìng)爭(zhēng)力。用 JSP 開(kāi)發(fā)的 Web 應(yīng)用是跨平臺(tái)的,即能在 Linux 下運(yùn)行,也能在其他操作系統(tǒng)上運(yùn)行。</p><p> 3.1.3 經(jīng)濟(jì)可行性</p><p> 經(jīng)濟(jì)
41、可行性分析是指成本效益的分析,評(píng)估項(xiàng)目的開(kāi)發(fā)成本并估算開(kāi)發(fā)成本,評(píng)估是否會(huì)超過(guò)項(xiàng)目預(yù)期的全部利潤(rùn)。網(wǎng)上購(gòu)書(shū)系統(tǒng)在經(jīng)濟(jì)上主要有以下幾個(gè)突出的優(yōu)勢(shì):</p><p> 1、資金投資少,資金回籠快,不存在存活問(wèn)題,特別適合于小型商店和個(gè)人賣家的應(yīng)用。</p><p> 2、銷售時(shí)間不受限制,不需要專門的人看守,提交訂單自動(dòng)化,任何時(shí)間都可以進(jìn)行下單交易。</p><p&g
42、t; 3、銷售地點(diǎn)不受限制,甚至在家里就可以經(jīng)營(yíng)網(wǎng)店。</p><p> 4、由于網(wǎng)絡(luò)的發(fā)展,人們上網(wǎng)是很普通很便捷的事情,致使網(wǎng)上商店人氣旺盛,客流量比較多。因此,只要商品有特色、價(jià)格合理、服務(wù)到位,網(wǎng)上購(gòu)物系統(tǒng)每天將會(huì)帶來(lái)成千上萬(wàn)的客流量,經(jīng)濟(jì)收益也是可觀的。該系統(tǒng)對(duì)操作環(huán)境要求不大,系統(tǒng)的開(kāi)發(fā)不需要很強(qiáng)的技術(shù)和經(jīng)濟(jì)支持,維護(hù)起來(lái)也很方便,就其功能帶來(lái)的利益來(lái)說(shuō),是完全可行的。</p>&l
43、t;p> 3.2 系統(tǒng)需求分析</p><p> 系統(tǒng)需求分析就是指在整個(gè)系統(tǒng)開(kāi)發(fā)過(guò)程中解決“做什么”的問(wèn)題,把要解決哪些問(wèn)題,滿足會(huì)員哪些具體的信息需求調(diào)查分析清楚。本網(wǎng)上購(gòu)物系統(tǒng)的目的是鑒于互聯(lián)網(wǎng)的優(yōu)勢(shì)以及對(duì)國(guó)內(nèi)外相關(guān)現(xiàn)狀的研究分析,我決定以基于 Web 的購(gòu)物網(wǎng)站開(kāi)發(fā)作為我的畢業(yè)設(shè)計(jì)主題。立足于設(shè)計(jì)一個(gè)在網(wǎng)絡(luò)平臺(tái)上運(yùn)行的集購(gòu)物、支付和配送等功能于一體的無(wú)店鋪購(gòu)物。</p><p
44、> 系統(tǒng)能實(shí)現(xiàn)會(huì)員的注冊(cè)功能、登錄功能、商品的查詢,訂購(gòu)等功能。該系統(tǒng)基本上具備一個(gè)商品銷售網(wǎng)站應(yīng)該具備的功能,該設(shè)計(jì)項(xiàng)目基本上體現(xiàn)了構(gòu)建一個(gè)動(dòng)態(tài)商務(wù)網(wǎng)站所需要的技術(shù)。</p><p> 本網(wǎng)站是小型的商品銷售網(wǎng)站,消費(fèi)者可以有目的性的快速找到你所期望的產(chǎn)品,可以直觀的瀏覽商品的價(jià)格、內(nèi)容、生產(chǎn)日期是否符合需要,為現(xiàn)在高效率的生活帶來(lái)方便。本設(shè)計(jì)網(wǎng)上購(gòu)物系統(tǒng)的系統(tǒng)目標(biāo)如下:</p><
45、;p> 1、展示網(wǎng)站最新的商品信息,不斷地更新商品種類,使會(huì)員了解最新的市場(chǎng)動(dòng)態(tài)。</p><p> 2、會(huì)員可以在網(wǎng)站上修改個(gè)人資料、修改個(gè)人登錄網(wǎng)站密碼、查詢提交的訂單以及查詢個(gè)人在網(wǎng)站上的消費(fèi)情況。</p><p> 3、實(shí)現(xiàn)購(gòu)物車和收銀臺(tái)的功能,會(huì)員選擇所需要的商品,在線提交商品訂。4、對(duì)商品信息進(jìn)行管理,選擇商品類別將商品具體信息和圖片信息都存放在數(shù)據(jù)庫(kù)中,并可以修改
46、或者刪除商品信息。</p><p> 5、可以查看和查詢用詳細(xì)信息、會(huì)員消費(fèi)信息。</p><p> 6、對(duì)會(huì)員提交的訂單,根據(jù)情況進(jìn)行階段處理。</p><p> 7、對(duì)管理員信息、網(wǎng)站公告信息以及友情鏈接信息進(jìn)行維護(hù)管理。</p><p> 8、系統(tǒng)運(yùn)行穩(wěn)定,安全可靠。</p><p> 3.3 平臺(tái)功能
47、分析</p><p> 網(wǎng)上購(gòu)物系統(tǒng)網(wǎng)站分為前臺(tái)和后臺(tái)。其中,根據(jù)網(wǎng)上購(gòu)物系統(tǒng)前臺(tái)的特點(diǎn),可以將其分為商品查詢、商品展臺(tái)、購(gòu)物車、會(huì)員管理、收銀臺(tái)、訂單查詢、及商城公告7 個(gè)部分,其中各個(gè)部分及其包括的具體功能模塊如圖 3.1 系統(tǒng)前臺(tái)模塊圖展示:</p><p> 圖3.1 系統(tǒng)前臺(tái)模塊圖</p><p> 根據(jù)網(wǎng)上購(gòu)物系統(tǒng)后臺(tái)的特點(diǎn),可以將其分為友情鏈接設(shè)
48、置。商品大類別設(shè) 置、商品設(shè)置、商品小類別設(shè)置、公告設(shè)置、后臺(tái)管理員設(shè)置、訂單設(shè)置以及退出后臺(tái) 9個(gè)部分,其中各個(gè)部分及其包括的具體功能模塊如圖 3.2</p><p> 圖3.2 后臺(tái)系統(tǒng)模塊圖</p><p><b> 3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 3.4.1數(shù)據(jù)庫(kù)表分析</p><p>
49、 根據(jù)上面實(shí)體和產(chǎn)生的行為,從實(shí)際需要出發(fā),同時(shí)又考慮各實(shí)體間的聯(lián)系和統(tǒng)一性,設(shè)計(jì)出如下各表:</p><p><b> 1.商品表</b></p><p> 商品表主要是用于存儲(chǔ)商品的基本信息,如商品的名稱、商品的價(jià)格、商品的類型等,如表3.1所示:</p><p><b> 表3.1商品表</b></p&
50、gt;<p><b> 2.商品類型表</b></p><p> 商品類型表主要是用于保存商品的類型,如商品的ID、商品的類型名、以及商品的日期,如表3.2所示:</p><p> 表 3.2 商品類型表</p><p><b> 3.訂單表</b></p><p> 訂單表
51、主要是用于保存會(huì)員的購(gòu)物信息,如訂單的ID、購(gòu)買數(shù)量、商品的價(jià)格等,如表3.3所示:</p><p><b> 表 3.3 訂單表</b></p><p><b> 4.會(huì)員表</b></p><p> 會(huì)員表主要是用于保存普通會(huì)員和管理員的信息,如會(huì)員的ID、會(huì)員的名稱、會(huì)員的密碼、注冊(cè)的時(shí)間等,如表3.4所示:&
52、lt;/p><p><b> 表 3.4 會(huì)員表</b></p><p> 第四章 系統(tǒng)前臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 網(wǎng)站的整個(gè)前臺(tái)部分是供消費(fèi)者瀏覽、選購(gòu)的部分,一個(gè)好的網(wǎng)站的前臺(tái)部分一定非常精美,非常有條理,因此,前臺(tái)的設(shè)計(jì)主要把握3點(diǎn):簡(jiǎn)明扼要、條理清晰、層次分明。下面將一一介紹我的網(wǎng)站系統(tǒng)的前臺(tái)部分的實(shí)現(xiàn)</p>
53、<p> 4.1 前臺(tái)功能設(shè)計(jì)</p><p> 為了吸引顧客的眼球,本購(gòu)物網(wǎng)站將商品分類信息、最新上架商品、商城特色展示和商城公告信息首先展現(xiàn)給顧客,然后再提供查看商品銷售排行、購(gòu)物車、查看訂單、商品分類查詢等業(yè)務(wù)。圖4.1是網(wǎng)站前臺(tái)的功能結(jié)構(gòu)圖</p><p> 4.1網(wǎng)上購(gòu)物前臺(tái)設(shè)計(jì)</p><p> 4.2 通用文件設(shè)計(jì)</p>
54、<p> 這里所說(shuō)的通用文件是指在開(kāi)發(fā)系統(tǒng)頁(yè)面中,經(jīng)常會(huì)使用到的文件。本系統(tǒng)包括了下面兩個(gè)通用文件,分別是系統(tǒng)頭文件和數(shù)據(jù)庫(kù)連接文件。</p><p> 系統(tǒng)的頭文件被放置在整個(gè)網(wǎng)頁(yè)的頂部,它的主要功能是導(dǎo)航。通過(guò)頭文件的鏈接,可以很方便、快捷地進(jìn)入其他頁(yè)面。此外,由于它的位置突出,也放置一些重要的提示信息,如目前會(huì)員的狀態(tài),是否有未處理的訂單等。2.數(shù)據(jù)庫(kù)連接文件</p><
55、;p> 為了使每個(gè)網(wǎng)頁(yè)都能方便的訪問(wèn)到數(shù)據(jù)庫(kù),要先建立一個(gè)數(shù)據(jù)庫(kù)連接文件。此文件由DataConnect類實(shí)現(xiàn)。這是一個(gè)功能性文件,主要作用是連接服務(wù)器中的數(shù)據(jù)庫(kù),凡要調(diào)用數(shù)據(jù)庫(kù)的地方,現(xiàn)在就可以直接引用它了。</p><p><b> 4.3 首頁(yè)設(shè)計(jì)</b></p><p> 首頁(yè)模塊包括3個(gè)主要的部分,采用內(nèi)嵌框架技術(shù)。首頁(yè)中的系統(tǒng)頭文件,現(xiàn)在只要用
56、包含文件的方式調(diào)用就可以了。網(wǎng)站首頁(yè)如圖4.2所示,其頁(yè)面為main.Js</p><p><b> 圖4.2 網(wǎng)站首頁(yè)</b></p><p> 4.3.1首頁(yè)中間部分</p><p> 首頁(yè)中間部分內(nèi)嵌一個(gè)頁(yè)面,將這個(gè)部分作為mainFrame,這個(gè)部分主要是幫助會(huì)員查詢想要購(gòu)買的商品,當(dāng)會(huì)員沒(méi)有注冊(cè)時(shí)也可以查詢商品,這是為了方便會(huì)員
57、查看是否有要購(gòu)買的商品,當(dāng)會(huì)員查找到自己想要購(gòu)買的商品時(shí),當(dāng)會(huì)員單擊購(gòu)買時(shí)系統(tǒng)將自動(dòng)檢測(cè)會(huì)員是否登錄系統(tǒng),如果沒(méi)有登錄系統(tǒng)將提示會(huì)員沒(méi)有登錄并彈出登錄對(duì)畫(huà)框,登錄成功后方可購(gòu)買商品。商品查詢方式采用的是模糊查詢?nèi)鐖D4.3 mohu.jsp頁(yè)面所示。</p><p> 圖4.3 商品模糊查詢</p><p> 4.4 網(wǎng)站會(huì)員設(shè)計(jì)</p><p> 會(huì)員是構(gòu)成網(wǎng)
58、站主體的一個(gè)重要組成部分,網(wǎng)站設(shè)置會(huì)員塊的目的之一在于方便網(wǎng)站信息的管理,尤其是商務(wù)網(wǎng)站,獲取了注冊(cè)會(huì)員的資料信息,才能根據(jù)這些信息進(jìn)行按單發(fā)貨、資料統(tǒng)計(jì)、地區(qū)整理的工作。因此,將會(huì)員作為模塊來(lái)劃分是很有必要的所謂的會(huì)員模塊,是指包含會(huì)員注冊(cè)和各項(xiàng)操作在內(nèi)的活動(dòng)集合體。下面分析這流程中需要實(shí)現(xiàn)的個(gè)模塊和實(shí)現(xiàn)的功能。</p><p> 4.4.1 會(huì)員注冊(cè)</p><p> 首先,是會(huì)員
59、注冊(cè)和資料的登記,這兩個(gè)界面比較簡(jiǎn)單。在成為會(huì)員之前要進(jìn)行注冊(cè)。注冊(cè)時(shí),有注冊(cè)條款的閱讀,確定后進(jìn)入簡(jiǎn)單的信息登記。在注冊(cè)信息登記中,先判斷會(huì)員名是否重復(fù)。并且對(duì)輸入的E-mail的格式進(jìn)行檢查,輸入不正確時(shí),要重新輸入。同時(shí),系統(tǒng)會(huì)驗(yàn)證前后輸入的密碼是否一樣。此外,對(duì)必須登記的項(xiàng)目,要填寫(xiě),否則不能注冊(cè)成功。顯示的注冊(cè)條約是在后臺(tái)已經(jīng)設(shè)置好的,打開(kāi)數(shù)據(jù)庫(kù)就可以讀取了。接受會(huì)員提交的信息后,先根據(jù)會(huì)員名打開(kāi)數(shù)據(jù)庫(kù)中的會(huì)員信息表,查詢?cè)摃?huì)
60、員名是否已經(jīng)存在。然后通過(guò)使用JavaScript腳本語(yǔ)言編寫(xiě)的check函數(shù)對(duì)輸入的其他信息進(jìn)行判斷,根據(jù)不同的情況出現(xiàn)不同的提示,直至正確。最后,將提交的信息寫(xiě)入數(shù)據(jù)庫(kù)。值得注意的是:通過(guò)一個(gè)變量,保存會(huì)員的注冊(cè)時(shí)間段,可以限制會(huì)員在短時(shí)間內(nèi)多次重復(fù)注冊(cè)。這些功能的實(shí)現(xiàn)主要由注冊(cè)文件reg.java完成,register.jsp頁(yè)面如圖4-4所示下:</p><p> 圖4-4 會(huì)員注冊(cè)界面</p&g
61、t;<p> 部分主要實(shí)現(xiàn)代碼如下:</p><p> function pass{</p><p> var pass=false;</p><p> var uname=document.form1.username.value;</p><p> var upass=document.form1.upass.va
62、lue;</p><p> if (myform.pwd1.value==""){</p><p> alert("請(qǐng)確認(rèn)密碼!");myform.pwd1.focus();return;}</p><p> if (myform.pwd.value!=myform.pwd1.value){</p><
63、;p> alert("您兩次輸入的密碼不一致,請(qǐng)重新輸入!");myform.pwd.focus();return;}</p><p> if (myform.email.value==""){</p><p> alert("請(qǐng)輸入Email地址!");myform.email.focus();return;}<
64、;/p><p> var i=myform.email.value.indexOf("@");</p><p> var j=myform.email.value.indexOf(".");</p><p> if((i<0)||(i-j>0)||(j<0)){</p><p>
65、alert("您輸入的Email地址不正確,請(qǐng)重新輸入!</p><p> ");myform.email.value="";myform.email.focus();return;}</p><p> <form name="form2" method="post" action="che
66、ckServlet" onSubmit="return pass()"></p><p> <table width="600" height="260" border="1" align="center" cellpadding="0" cellspacing=&quo
67、t;0" bordercolor="#000000"></p><p><b> <tr></b></p><p> <td width="160" height="40"><div align="center" class="S
68、TYLE3">用戶名:</p><p> 4.4.2 會(huì)員登錄</p><p> 其次是登錄界面,注冊(cè)成功后的會(huì)員在下次進(jìn)入時(shí),需要進(jìn)行登錄,其主要功能就是識(shí)別是否是注冊(cè)會(huì)員。會(huì)員登錄后成為會(huì)員是網(wǎng)上購(gòu)物系統(tǒng)中會(huì)員進(jìn)行購(gòu)物的必要條件,在運(yùn)行本系統(tǒng)時(shí)后,首先進(jìn)入的是網(wǎng)上購(gòu)物系統(tǒng)的首頁(yè),會(huì)員在沒(méi)有登陸的情況下可以查詢商城的公告信息,查看商城的各種商品及銷售排行等。當(dāng)會(huì)員在“
69、會(huì)員登錄”操作區(qū)域中,沒(méi)有輸入會(huì)員名和密碼時(shí),系統(tǒng)會(huì)通過(guò) JavaScript 進(jìn)行判斷,并給予提示。會(huì)員登錄模塊login.jsp如圖 4.5 所示:</p><p> 圖 4.5 會(huì)員登錄</p><p> 登錄數(shù)據(jù)驗(yàn)證的程序代碼如下:</p><p><b> <%</b></p><p> Cond
70、b con=new Condb();</p><p> where Username='"+username+"' and Userpass='"+password+"'";</p><p> ResultSet rs=con.executeQuery(sql);</p><p>
71、 if(rs.next()){</p><p> session.setAttribute("username",username);</p><p> session.setAttribute("password",password);</p><p><b> %></b></p&
72、gt;<p> <script language="javascript"></p><p> alert("登錄成功");</p><p><b> </script></b></p><p> <% response.sendRedirect(&q
73、uot;../index.jsp");</p><p><b> }else{</b></p><p><b> %></b></p><p> <script language="javascript"></p><p> alert(&qu
74、ot;用戶名或密碼錯(cuò)誤");</p><p> history.back();</p><p><b> </script></b></p><p><b> <%}}</b></p><p> 部分關(guān)鍵類代碼如下:</p><p> A
75、ction 實(shí)現(xiàn)類:</p><p><b> // 會(huì)員登錄</b></p><p> public ActionForward checkMember(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest request, HttpServletResp
76、onse response) {</p><p> String name = request.getParameter("name");</p><p> MemberForm.memberForm = dao.selectMemberForm(name);</p><p> if (null == memberForm || membe
77、rForm.equals("")) {</p><p> request.setAttribute("result", "不存在此會(huì)員,請(qǐng)重新登錄?。?!");</p><p> } else if (!memberForm.getPassword().trim().equals(</p><p> r
78、equest.getParameter("password").trim())) {</p><p> request.setAttribute("result", "密碼錯(cuò)誤,請(qǐng)重新登錄?。?!");</p><p><b> } else {</b></p><p> requ
79、est.setAttribute("memberForm", memberForm);</p><p> }return mapping.findForward("checkMember");}</p><p><b> <body></b></p><p> <%@ includ
80、e file="shouye.jsp" %></p><p> <form name="form1" method="post" action=ShopCheckServlet" onSubmit="return pass();"></p><p> 單擊“登錄”按鈕后,先通過(guò)用
81、 JavaScript 編寫(xiě)的函數(shù)來(lái)檢測(cè)是否輸入了會(huì)員名和密碼,如果沒(méi)有輸入,便鎖定相應(yīng)的文本框進(jìn)行輸入。確定輸入完成以后,將輸入表單中接受的信息,提交給文件控制層,由它查詢?cè)摃?huì)員是否存在于數(shù)據(jù)庫(kù)中的會(huì)員資料表中,如果存在便進(jìn)入相應(yīng)的界面,否則出現(xiàn)相應(yīng)的提示。登錄界面是由文件user.jsp 實(shí)現(xiàn)的。在將表單信息提交給文件 checkusers.java 處理時(shí),先檢測(cè)提交的信息是否完整。同時(shí),控制字體“正在登錄……”字樣的顯示,也是在
82、該文件中通過(guò) visibility 屬性的設(shè)置來(lái)實(shí)現(xiàn)的。通過(guò)檢測(cè)無(wú)誤后,將表單提交的信息轉(zhuǎn)給文件 checkusers.java 來(lái)處理,該文件根據(jù)獲取的信息,在數(shù)據(jù)庫(kù)會(huì)員信息表中查詢獲得的會(huì)員名,并作相應(yīng)的處理。當(dāng)會(huì)員登錄成功后系統(tǒng)會(huì)記錄本次登錄的信息,包括登錄時(shí)間等如圖4.6 所示</p><p> 圖4.6 登錄成功界面</p><p><b> 主要關(guān)鍵代碼:<
83、/b></p><p> 共</span>${requestScope.totalnum}<span class="STYLE8">頁(yè)</span></p><p> <span class="STYLE8">當(dāng)前</span>${requestScope.curpage}<
84、span class="STYLE8">頁(yè) </p><p> <a href="shouye.jsp" class="STYLE7">首頁(yè)</a> </p><p> <a href="ShopServlet?ybid=${requestScope.bid}&&p
85、agenum=${requestScope.curpage-1}">上一頁(yè)</a></p><p> <a href="ShopServlet?ybid=${requestScope.bid}&&pagenum=${requestScope.curpage+1}">下一頁(yè) </a></p><p>
86、 <a href="ShopServlet?ybid=${requestScope.bid}&&pagenum=${requestScope.totalnum}"> 尾頁(yè) </a></span></p><p> 4.4.3 會(huì)員信息管理</p><p> 上面講述的都是有關(guān)注冊(cè)和登錄的實(shí)現(xiàn)過(guò)程,當(dāng)會(huì)員登錄完成后
87、,就可以進(jìn)行相關(guān)的操作,如進(jìn)入“我的帳戶登錄”,查看相關(guān)的信息。在進(jìn)入“我的帳戶”前,系統(tǒng)會(huì)自動(dòng)檢測(cè)該會(huì)員是否登錄。該頁(yè)是由過(guò)程 login()實(shí)現(xiàn)的,把一些常用的界面,寫(xiě)成子過(guò)程,既方便其他頁(yè)面調(diào)用,又利于以后的程序修改和維護(hù),其過(guò)程實(shí)現(xiàn)的方法和前面講述的系統(tǒng)登錄時(shí)的方法一樣,它也是將獲得的表單信息提交給文件 chkuser.java,由它檢測(cè)會(huì)員名,確定是否登錄。當(dāng)會(huì)員登錄“我的帳戶”后,便進(jìn)入帳戶主界面,該頁(yè)面展示當(dāng)前網(wǎng)站銷售量和
88、人氣都是最好的十本商品,會(huì)員可以單擊商品名查看商品詳情,也可以直接點(diǎn)擊“購(gòu)買”圖標(biāo),將商品放入購(gòu)物車中?!拔业膸簟钡闹鹘缑媸怯蛇^(guò)程 userziliao()完成的。這一過(guò)程的實(shí)現(xiàn)主要根據(jù)數(shù)據(jù)庫(kù)中商品信息表的商品銷量字段進(jìn)行排序,同時(shí),設(shè)置查看商品詳細(xì)信息和購(gòu)買商品的鏈接。</p><p> 4.4.3 會(huì)員查詢商品信息設(shè)計(jì)</p><p> 商品構(gòu)成了網(wǎng)上購(gòu)物系統(tǒng)的物質(zhì)內(nèi)容,一個(gè)網(wǎng)上
89、購(gòu)物系統(tǒng)能否吸引客戶,豐富的商品資源是必不可少的,所以網(wǎng)上購(gòu)物系統(tǒng)的商品管理師整個(gè)系統(tǒng)中非常重要的一個(gè)環(huán)節(jié)。如何安全有效的存儲(chǔ)商品信息,合理安排頁(yè)面內(nèi)容,從而使會(huì)員查詢方便高效,這是商城管理所要考慮的內(nèi)容。前臺(tái)商品信息查詢模塊主要包括商品分頁(yè)查詢、商品分類查詢、商品銷售查詢、和特價(jià)商品查詢4 個(gè)功能。前臺(tái)商品信息查詢模塊的框架如圖4.7 所示:</p><p> 圖 4.7 前臺(tái)商品信息查詢</p>
90、<p><b> 部分代碼實(shí)現(xiàn)如下:</b></p><p> Action 實(shí)現(xiàn)類:</p><p> public ActionForward execute(ActionMapping mapping, ActionForm form,</p><p> HttpServletRequest request, Htt
91、pServletResponse response)</p><p> throws Exception {</p><p> request.setCharacterEncoding("gb2312");</p><p> this.dao = new GoodsDao();</p><p> small =
92、new SmallTypeDao();</p><p> action = Integer.parseInt(request.getParameter("action"));</p><p> session = request.getSession();</p><p> switch (action) {</p><
93、p><b> case 0: {</b></p><p> return goodSelect(mapping, form, request, response);</p><p> // 全部查詢小類別信息}</p><p><b> case 1: {</b></p><p>
94、return goodSelectBig(mapping, form, request, response)</p><p> // 按大類別商品信息查詢}</p><p><b> case 2: {</b></p><p> return goodSelectNewHead(mapping, form, request,respons
95、e);</p><p><b> // 新品查詢}</b></p><p><b> case 3: {</b></p><p> return goodSelectFreeHead(mapping, form, request,response);// 特價(jià)商品}}</p><p> 4.
96、5 會(huì)員購(gòu)物設(shè)計(jì)</p><p> 在會(huì)員模塊中,除可以查看和修改個(gè)人的資料信息,還可以購(gòu)買網(wǎng)站中的產(chǎn)品。由于商業(yè)網(wǎng)站的主要業(yè)務(wù)是銷售產(chǎn)品,因此將介紹的會(huì)員購(gòu)物模塊也是網(wǎng)上購(gòu)物系統(tǒng)的關(guān)鍵部分,會(huì)員購(gòu)物的界面如下圖4.8所示:</p><p><b> 圖4.8 會(huì)員購(gòu)物</b></p><p> 4.5.1 購(gòu)物車設(shè)計(jì)</p>
97、<p> 會(huì)員登錄后,在頁(yè)面的任何一個(gè)地方,單擊“購(gòu)買”鏈接,就可以將對(duì)應(yīng)的商品放入購(gòu)物車,購(gòu)物車的作用是暫時(shí)存放讀者選中的商品,并顯示相應(yīng)的產(chǎn)品信息。將選購(gòu)商品放入購(gòu)物車中,是由文件 add_shop.java 和文件 show_shop.java 共同完成的。前者是一個(gè)純功能性文件,在會(huì)員單擊“購(gòu)買”鏈接時(shí),獲得該商品的 ID 號(hào),并根據(jù) ID 號(hào)查詢商品的其他信息,一起保存到數(shù)組變量 Session 中。 當(dāng)文件a
98、dd_shop.java 執(zhí)行完將購(gòu)物信息寫(xiě)入 Session 數(shù)組變量后,便轉(zhuǎn)向由文件 show_shop.java完成購(gòu)買商品信息顯示頁(yè)面。在該文件中,調(diào)出保存商品信息的數(shù)組變量 Session,經(jīng)過(guò)設(shè)計(jì)shop.jsp頁(yè)面如下:</p><p><b> 圖 4.9購(gòu)物車</b></p><p> 查看購(gòu)物車的部分關(guān)鍵代碼如下:</p><
99、;p> Cart_see.jsp</p><p> <%if(session.getAttribute("cart")==null){%></p><p><b> 您還沒(méi)有購(gòu)物?。?!</b></p><p> <%}else{%></p><p><b&g
100、t; <%</b></p><p> float sum=0;</p><p> Vector cart=(Vector)session.getAttribute("cart");</p><p> for(int i=0;i<cart.size();i++){</p><p> Sell
101、GoodsForm form=(SellGoodsForm)cart.elementAt(i);</p><p> sum=sum+form.number*form.price;}</p><p><b> %></b></p><p> 選購(gòu)好商品的購(gòu)物車界面如圖 4.10 所示。</p><p> 清空
102、購(gòu)物車的部分關(guān)鍵代碼如下:</p><p> 清空購(gòu)物車的實(shí)現(xiàn)方法很簡(jiǎn)單,只需將保存在 session 中的購(gòu)物信息清空,并將頁(yè)面重定向到購(gòu)物車為空的頁(yè)面即可。清空購(gòu)物車的完整代碼如下:</p><p> Cart_clear.jsp</p><p><b> <%</b></p><p> session
103、.removeAttribute("cart");</p><p> response.sendRedirect("clear.jsp"):%></p><p> 4.5.2 會(huì)員購(gòu)物訂單設(shè)計(jì)</p><p> 當(dāng)會(huì)員在購(gòu)物車中確定好選購(gòu)的商品品種和數(shù)量后,單擊“去下訂單”按鈕時(shí),便進(jìn)入確定購(gòu)物信息和個(gè)人信息的頁(yè)面
104、,如果會(huì)員在注冊(cè)時(shí),沒(méi)有登記個(gè)人詳細(xì)的收貨信息,便進(jìn)入個(gè)人信息的錄入頁(yè)面;如果錄入完成或注冊(cè)時(shí)就已經(jīng)填寫(xiě)了詳細(xì)的收貨信息,則顯示全部個(gè)人信息,并提供修改信息的鏈接。</p><p> 在會(huì)員購(gòu)物車中單擊“購(gòu)買”按鈕后,將出現(xiàn)會(huì)員商品信息和個(gè)人信息確定頁(yè)面,該頁(yè)面用于顯示會(huì)員購(gòu)買商品的全部信息,包括商品信息、個(gè)人資料信息、送貨方式、支付方式,這時(shí)還沒(méi)有生成訂單,會(huì)員還可以取消訂單,也就是說(shuō),只要不單擊“生成訂單”
105、按鈕,就不會(huì)生成訂單。顯示購(gòu)買商品全部信息的界面是由文件 orderedit.java 實(shí)現(xiàn)的。為了更加合理地處理頁(yè)面中各項(xiàng)數(shù)據(jù)的修改和更新,我們將各項(xiàng)功能模塊分別寫(xiě)成不同的過(guò)程,保存在文件 cartfunction.java 中,并將該文件包含在 orderedit.java 文件中,當(dāng)需要實(shí)現(xiàn)哪項(xiàng)功能時(shí),只要調(diào)用該項(xiàng)功能的過(guò)程就可以了。在調(diào)用各過(guò)程,實(shí)現(xiàn)各功能前,還要在文件 orderedit.java 中,編寫(xiě) JavaScrip
106、t 函數(shù),用于響應(yīng)列表框中選項(xiàng)改變和單擊選項(xiàng)事件。</p><p> 4.5.3 生成訂單</p><p> 單擊“生成訂單”按鈕后,則將表單的信息和 Session 數(shù)組變量保存的信息全部寫(xiě)入數(shù)據(jù)庫(kù),生成訂單;并通過(guò)生成訂單表和多表聯(lián)合查詢。共同顯示整個(gè)生成的訂單的全部信息。生成訂單是網(wǎng)上購(gòu)物系統(tǒng)的最終目的,前面的所有功能的實(shí)現(xiàn)都是為了生成一個(gè)會(huì)員滿意的訂單做基礎(chǔ)的。在此要生成一個(gè)可
107、以供會(huì)員雖死查詢的訂單號(hào),還要保存會(huì)員訂單中所購(gòu)買的物品的詳細(xì)信息。當(dāng)會(huì)員確認(rèn)購(gòu)物車中所購(gòu)買的商品不在改變后,就可以到收銀臺(tái)結(jié)賬并生成訂單。結(jié)賬的流程為:從購(gòu)物車中讀取商品名稱,商品數(shù)量,商品價(jià)格信息,生成一個(gè)唯一的訂單號(hào),同時(shí)把會(huì)員的基本信息讀取出來(lái),形成一個(gè)完整的訂單,并寫(xiě)入數(shù)據(jù)庫(kù),填寫(xiě)訂單的頁(yè)面的運(yùn)行結(jié)果如圖 4.10 所示:</p><p> 圖 4.10 訂單頁(yè)面運(yùn)行結(jié)果</p><
108、;p><b> 主要關(guān)鍵代碼:</b></p><p><b> <%</b></p><p> String buy=request.getParameter("buy");</p><p> if(buy!=null&&buy.equals("查看&qu
109、ot;)){</p><p> response.sendRedirect("look.jsp");</p><p> }else if(buy!=null&&buy.equals("購(gòu)買")){</p><p> response.sendRedirect("order.jsp");
110、</p><p><b> }</b></p><p><b> %></b></p><p> 4.5.4 查看生成訂單</p><p> 本系統(tǒng)中不僅在生成訂單時(shí),顯示訂單信息,而且還可以在“我的帳戶”中查看歷史訂單,刪除訂單和修改訂單的進(jìn)程狀態(tài)。會(huì)員在前臺(tái)修改訂單狀態(tài)后,后臺(tái)網(wǎng)站
111、管理人員就可以查看到,同時(shí),后臺(tái)人員也可以修改訂單的狀態(tài),并將狀態(tài)信息反饋給會(huì)員,從而使整個(gè)訂單的進(jìn)程很透明,便于信息的交流。</p><p> 當(dāng)在“我的帳戶”中的訂單信息管理欄中單擊某訂單的“查看”鏈接后,便獲取該訂單的訂單號(hào),并將訂單號(hào)提交給文件 dingdan.java,由該文件獲取訂單號(hào)后查詢相關(guān)信息,并將結(jié)果顯示在頁(yè)面中。訂單查詢模塊流程圖如圖 4.11 所示。</p><p&g
112、t; 圖 4-11 訂單查詢模塊流程圖</p><p> 第五章 購(gòu)物后臺(tái)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 此章將介紹網(wǎng)上購(gòu)物后臺(tái)管理的設(shè)計(jì),前臺(tái)功能的實(shí)現(xiàn)都離不開(kāi)后臺(tái)各項(xiàng)數(shù)據(jù)的錄入和設(shè)置。可以說(shuō)整個(gè)系統(tǒng)的執(zhí)行是從后臺(tái)開(kāi)始的如:要顯示商品,需要從后臺(tái)錄入商品資料等等。整個(gè)后臺(tái)系統(tǒng)流程如圖 5-1 所示。</p><p> 圖 5-1 整個(gè)后臺(tái)系統(tǒng)流程</
113、p><p> 5.1 后臺(tái)登錄界面和主頁(yè)面界面設(shè)計(jì)</p><p> 為了確保后臺(tái)數(shù)據(jù)的安全性,進(jìn)入后臺(tái)系統(tǒng)時(shí),必須先登錄,才能進(jìn)入。按會(huì)員名登錄后臺(tái)系統(tǒng)還可以識(shí)別管理人員的權(quán)限,從而依據(jù)權(quán)限進(jìn)行相應(yīng)的操作。登錄成功后,管理人員便進(jìn)入后臺(tái)系統(tǒng)的主要界面,該主頁(yè)界面包括兩部分:一是系統(tǒng)操作導(dǎo)航菜單,二是本系統(tǒng)的名字。下面分別介紹他們的實(shí)現(xiàn)方法。</p><p> 5
114、.1.1 后登錄界面的設(shè)計(jì)</p><p> 此登錄界面的設(shè)計(jì)方法很簡(jiǎn)單,和普通的登錄界面一樣,用于對(duì)操作人員登錄時(shí)的身份驗(yàn)證。主要由兩個(gè)文件組成。一是設(shè)計(jì)界面的文件,主要功能是接收會(huì)員輸入的信息,如:姓名、密碼。另外一個(gè)是實(shí)現(xiàn)登錄功能的文件,主要作用是在數(shù)據(jù)庫(kù)的相關(guān)表中查找會(huì)員名和密碼信息,找到則進(jìn)入后臺(tái)主頁(yè),找不到則出現(xiàn)錯(cuò)誤提示信息。該界面是由 JAVA 文件實(shí)現(xiàn)的。在文件中,建立一個(gè)表單,供會(huì)員登錄時(shí)輸入
115、會(huì)員名和密碼,并將接受的信息轉(zhuǎn)給 JAVA 文件來(lái)處理。</p><p> 在提交信息之前,先通過(guò)函數(shù) shop_check()對(duì)輸入表單的信息是否完整進(jìn)行檢測(cè)。函數(shù) shop_check()是用 JavaScript 腳本語(yǔ)言編寫(xiě)的。在確認(rèn)提交的信息完整后,表單將信息提交給文件 chkadmin.java,該文件接受表單信息后,根據(jù)會(huì)員名查詢數(shù)據(jù)庫(kù)中的記錄,找到記錄后,核對(duì)會(huì)員名是否與密碼相符,如果無(wú)誤則進(jìn)入
116、后臺(tái)系統(tǒng)主頁(yè),否則出現(xiàn)錯(cuò)誤信息提示。管理員登錄admin.jsp界面如圖5.2 所示:</p><p> 圖 5.2 管理員登錄流程圖</p><p> 圖 5-3 管理員登錄界面</p><p> 管理員信息驗(yàn)證的關(guān)鍵代碼如下:</p><p><b> <%</b></p><p&g
117、t; String admin=(String)session.getAttribute("admin"); //從 session 中獲得會(huì)員名</p><p> if(admin==null || !admin.equals("true")){ //若會(huì)員名為空或 false</p><p> response.sendRedirect(&
118、quot;login.jsp"); // 則跳轉(zhuǎn)到登陸界面}</p><p><b> %></b></p><p> 5.1.2 后臺(tái)主頁(yè)的設(shè)計(jì)</p><p> 在設(shè)計(jì)后臺(tái)主頁(yè)時(shí),由于整個(gè)后臺(tái)系統(tǒng)以管理信息為主,因此,在界面設(shè)計(jì)上盡量簡(jiǎn)潔,以方便操作為主。此系統(tǒng)的后臺(tái)管理主頁(yè)是由一個(gè)框架結(jié)構(gòu)構(gòu)成的,當(dāng)會(huì)員單擊導(dǎo)航菜單鏈
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)上商店系統(tǒng)開(kāi)發(fā)畢業(yè)論文
- 網(wǎng)上購(gòu)物系統(tǒng)畢業(yè)論文
- 網(wǎng)上購(gòu)物系統(tǒng)畢業(yè)論文
- 網(wǎng)上購(gòu)物系統(tǒng)畢業(yè)論文
- 畢業(yè)論文——網(wǎng)上購(gòu)物系統(tǒng) (3)
- 網(wǎng)上購(gòu)物系統(tǒng)畢業(yè)論文 (2)
- 畢業(yè)論文——網(wǎng)上購(gòu)物系統(tǒng) (2)
- 畢業(yè)論文——網(wǎng)上購(gòu)物系統(tǒng) (2)
- 網(wǎng)上購(gòu)物系統(tǒng)的畢業(yè)論文
- 畢業(yè)論文——網(wǎng)上購(gòu)物系統(tǒng) (3)
- 畢業(yè)論文范文——網(wǎng)上購(gòu)物系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)
- 畢業(yè)論文范文——網(wǎng)上購(gòu)物系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)
- 網(wǎng)上購(gòu)物畢業(yè)論文--網(wǎng)上購(gòu)物系統(tǒng)的分析與設(shè)計(jì)
- 網(wǎng)上購(gòu)物畢業(yè)論文
- 網(wǎng)上寵物店綜合系統(tǒng)開(kāi)發(fā)【畢業(yè)論文】
- 網(wǎng)上購(gòu)物商城系統(tǒng)的畢業(yè)論文
- 網(wǎng)上購(gòu)物系統(tǒng)后臺(tái)管理畢業(yè)論文
- 畢業(yè)論文范文——網(wǎng)上購(gòu)物系統(tǒng)
- 畢業(yè)論文范文——網(wǎng)上購(gòu)物系統(tǒng)
- 基于javaee網(wǎng)上購(gòu)物系統(tǒng)--畢業(yè)論文
評(píng)論
0/150
提交評(píng)論