




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、隨著Internet信息技術(shù)的高速發(fā)展,以及個(gè)人,企業(yè)上網(wǎng)的迅速普及,企業(yè)的WWW網(wǎng)站在商業(yè)活動(dòng)中發(fā)揮著越來越大的作用,互聯(lián)網(wǎng)已經(jīng)成為人們進(jìn)行交易的主要方式。在信息時(shí)代,能夠建立一個(gè)省時(shí)簡(jiǎn)單的購(gòu)物環(huán)境,對(duì)商家和買方都是不小的誘惑,因此建立一個(gè)功能強(qiáng)大、操作簡(jiǎn)單且界面美觀的電子商物網(wǎng)站,對(duì)企業(yè)的發(fā)展至關(guān)重要。網(wǎng)上書店系統(tǒng)作為B2B、B2C(Business to Customer,企業(yè)對(duì)消費(fèi)者),C2C(Customer to Customer,消費(fèi)者對(duì)消費(fèi)者)電子商務(wù)的前端商務(wù)平臺(tái),在其商務(wù)活動(dòng)的全過程中起著舉足輕重的作用。系統(tǒng)使用Eclipse作為前臺(tái)開發(fā)工具;使用Microsoft SQL
2、 Server 2000作為后臺(tái)數(shù)據(jù)庫(kù)的管理工具;使用的開發(fā)工具包是JDK Version 1.6;使用Tomcat 1.6.0作為Web服務(wù)器。另外,本系統(tǒng)采用了JSP+Servlet+JavaBean(MVC)三層架構(gòu)模式。本系統(tǒng)采用B/S架構(gòu)。主要有兩個(gè)參與者:客戶和管理員??蛻艨梢詾g覽圖書信息,注冊(cè)賬號(hào),修改自已的賬號(hào)信息,購(gòu)買圖書,下發(fā)訂單,給管理員留言等。管理員可對(duì)圖書進(jìn)行增刪改查等維護(hù)工作,以及查看訂單,查看留言和修改登錄密碼等。關(guān)鍵詞:B/S,JSP , EclipseAbstractWith the rapid development of Internet informat
3、ion techology , as well as individua,the rapid popularization of Internet enterprises, enterprises in commercial activities of the WWW site is playing the more and more major role, the Internet has become the main way people traded.In the information age, building a time-saving shopping environment,
4、 simple to businessmen and the buyer is quite a temptation, thus establishing a powerful, simple to operate and interface aesthetics of electronic business content sites, to enterprises development is very important.As online bookstore system of e-commerce B2B, B2C(Business to Customer)and C2C(Custo
5、mer to Customer) front in its business platform, and the whole process of business activity plays a pivotal role.Systems use Eclipse as a receptionist development tools;Use Microsoft SQL Server 2000 as backend database management tools.Use development kit is JDK Version 1.60 ; Use 1.6.0 as a Tomcat
6、Web server. In addition, this system USES a JSP + Servlet + JavaBean (MVC) three-layer structure mode.The system USES the B/S structure. There are two major participants: the customer and administrators. Customers can browse books information, registration number, modify own account information, buy
7、ing books, issued orders, give administrator message, etc. Administrators can increase to revise check books such as maintenance, and view the order, check the message and modify login passwords, etcKeywords: B/S,JSP , Eclipse目錄前言1一網(wǎng)上購(gòu)物系統(tǒng)概述21.1系統(tǒng)開發(fā)背景21.1.1網(wǎng)上購(gòu)物的發(fā)展21.1.2網(wǎng)上購(gòu)物系統(tǒng)的現(xiàn)狀21.2系統(tǒng)的開發(fā)意義31.3 Java W
8、eb開發(fā)技術(shù)介紹31.4 本系統(tǒng)概述61.5開發(fā)所用軟件介紹61.5.1 Eclipse介紹61.5.2 Tomcat介紹71.5.3 SQL Server 2000 介紹8二系統(tǒng)需求分析與總體設(shè)計(jì)92.1 系統(tǒng)可行性分析92.1.1技術(shù)可行性分析92.1.2 經(jīng)濟(jì)可行性分析92.1.3操作可行性92.1.4法律可行性92.2 系統(tǒng)需求分析92.3系統(tǒng)總體設(shè)計(jì)102.3.1 MVC模式介紹102.3.2 系統(tǒng)流程圖112.4 數(shù)據(jù)庫(kù)設(shè)計(jì)132.4.1數(shù)據(jù)庫(kù)ER圖132.4.2 表格18三系統(tǒng)詳細(xì)設(shè)計(jì)203.1數(shù)據(jù)庫(kù)連接203.1.1 JDBC介紹203.2 系統(tǒng)功能模塊203.2.1 登錄模塊
9、203.2.2注冊(cè)模塊213.2.3 圖書操作模塊223.2.4 購(gòu)物車模塊233.2.5 訂單模塊253.2.6 留言模塊253.2.7 信息修改模塊26四系統(tǒng)頁(yè)面設(shè)計(jì)294.1首頁(yè)294.2 用戶登錄頁(yè)面294.3 購(gòu)物車頁(yè)面304.4 結(jié)算中心頁(yè)面314.5 用戶注冊(cè)頁(yè)面314.6 新增圖書頁(yè)面324.7 修改圖書頁(yè)面334.8 刪除圖書頁(yè)面334.9 查找圖書頁(yè)面34五系統(tǒng)難點(diǎn)分析與軟件測(cè)試355.1 系統(tǒng)難點(diǎn)分析之購(gòu)物車模塊355.1.1購(gòu)物車的歸屬問題355.1.2購(gòu)物車的設(shè)置問題355.2系統(tǒng)測(cè)試365.2.1 測(cè)試環(huán)境365.2.2軟件測(cè)試的定義365.2.3軟件詳細(xì)調(diào)試36總
10、結(jié)39致謝40主要參考文獻(xiàn)41附錄一:部分程序源代碼421 數(shù)據(jù)庫(kù)連接代碼422 登錄模塊代碼433 注冊(cè)模塊代碼444 購(gòu)物車模塊代碼45前言目前,網(wǎng)絡(luò)正以一種前所未有的沖擊力在影響著人類的活動(dòng),包括人類的生產(chǎn)和日常生活。網(wǎng)絡(luò)的誕生和發(fā)展,顛覆了傳統(tǒng)的信息傳播方式,沖破了存在于傳統(tǒng)交流方式中時(shí)間和空間的種種壁壘,極大地改變了人類從物質(zhì)到精神、從形式到內(nèi)容、從生產(chǎn)到生活的各種活動(dòng),并且給人類帶來了新的機(jī)遇和挑戰(zhàn)。2006年1月17日,中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)在京發(fā)布“第十七次中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告”。報(bào)告顯示,截至2005年12月31日,我國(guó)上網(wǎng)用戶總數(shù)突破1億,為1.11億人
11、,其中寬帶上網(wǎng)人數(shù)達(dá)到6430萬人。目前,我國(guó)網(wǎng)民數(shù)和寬帶上網(wǎng)人數(shù)均位居世界第二。國(guó)家頂級(jí)域名CN注冊(cè)量首次突破百萬,達(dá)到109萬,成為國(guó)內(nèi)用戶注冊(cè)域名的首選,穩(wěn)居亞洲第一。上網(wǎng)計(jì)算機(jī)數(shù)達(dá)到4950萬臺(tái),網(wǎng)絡(luò)國(guó)際出口帶寬達(dá)到136106M,網(wǎng)站數(shù)達(dá)到69.4萬個(gè)。IP地址總數(shù)達(dá)到7439萬個(gè),僅次于美國(guó)和日本,位居世界第三。在互聯(lián)網(wǎng)服務(wù)業(yè)務(wù)方面:電子郵件、搜索引擎、網(wǎng)上銀行、在線交易、網(wǎng)絡(luò)廣告、網(wǎng)絡(luò)新聞、網(wǎng)絡(luò)游戲等服務(wù)業(yè)務(wù)仍然快速的發(fā)展著。而本次畢業(yè)設(shè)計(jì)的任務(wù)是,構(gòu)建一個(gè)電子商務(wù)網(wǎng)站,采用的主要技術(shù)是基于服務(wù)器端的JSP、Java的組件JavaBean,以及網(wǎng)頁(yè)編程語(yǔ)言HTML。JSP是Jav
12、a Server Page的縮寫,是由Sun Microsystems公司倡導(dǎo)、許多公司參與建立一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn),它在動(dòng)態(tài)網(wǎng)頁(yè)的建設(shè)中有強(qiáng)大而特別的功能。JSP是一種服務(wù)器端HTML(或XML)嵌入Java代碼的腳本語(yǔ)言,是開發(fā)Web動(dòng)態(tài)網(wǎng)站快速而有效的工具,JSP技術(shù)的優(yōu)勢(shì):1. JSP技術(shù)是用Java語(yǔ)言作為腳本語(yǔ)言的。Java語(yǔ)言是成熟的、強(qiáng)大的、易擴(kuò)充的編程語(yǔ)言。2. 高效性與安全性。JSP在執(zhí)行前先被編譯成字節(jié)碼,字節(jié)碼由Java虛擬機(jī)解釋執(zhí)行,比源碼解釋效率高。3. 可維護(hù)性。由于JSP技術(shù)是一種開放的、跨平臺(tái)的結(jié)構(gòu),因此Web服務(wù)器、平臺(tái)及其他組件能很容易升級(jí)或切換,且不會(huì)影
13、響JSP基本的應(yīng)用程序。4.穩(wěn)定性。5.產(chǎn)品的多樣性。目前,在國(guó)內(nèi)JSP還是一種較新的技術(shù)。但JSP+Servlet+JDBC+JavaBean目前已經(jīng)成為開發(fā)電子商務(wù)平臺(tái)的主流技術(shù)。隨著國(guó)內(nèi)與國(guó)際的接軌,JSP必將成為網(wǎng)站開發(fā)技術(shù)的首選。一 網(wǎng)上購(gòu)物系統(tǒng)概述1.1系統(tǒng)開發(fā)背景1.1.1網(wǎng)上購(gòu)物的發(fā)展近年來,隨著Internet的迅速崛起,互聯(lián)網(wǎng)已日益成為收集提供信息的最佳渠道并逐步進(jìn)入傳統(tǒng)的流通領(lǐng)域。于是電子商務(wù)開始流行起來,越來越多的商家在網(wǎng)上建起在線商店,向消費(fèi)者展示出一種新穎的購(gòu)物理念。網(wǎng)上購(gòu)物系統(tǒng)作為B2B,B2C(BusinesstoCustomer,即企業(yè)對(duì)消費(fèi)者),C2C(Cu
14、stomertoCustomer,即消費(fèi)者對(duì)消費(fèi)者)電子商務(wù)的前端商務(wù)平臺(tái),在其商務(wù)活動(dòng)全過程中起著舉足輕重的作用。本文主要考慮的是如何建設(shè)B2C的網(wǎng)上購(gòu)物系統(tǒng)。網(wǎng)上購(gòu)物是一種具有交互功能的商業(yè)信息系統(tǒng)。它向用戶提供靜態(tài)和動(dòng)態(tài)兩類信息資源。所謂靜態(tài)信息是指那些比經(jīng)常變動(dòng)或更新的資源,如公司簡(jiǎn)介、管理規(guī)范和公司制度等等;動(dòng)態(tài)信息是指隨時(shí)變化的信息,如商品報(bào)價(jià),會(huì)議安排和培訓(xùn)信息等。網(wǎng)上購(gòu)物系統(tǒng)具有強(qiáng)大的交互功能,可使商家和用戶方便的傳遞信息,完成電子貿(mào)易或EDI交易。這種全新的交易方式實(shí)現(xiàn)了公司間文檔與資金的無紙化交換。1.1.2網(wǎng)上購(gòu)物系統(tǒng)的現(xiàn)狀目前在國(guó)內(nèi)PHP與ASP應(yīng)用最為廣泛。而JSP由
15、于是一種較新的技術(shù),國(guó)內(nèi)采用的較少。但在國(guó)外,JSP已經(jīng)是比較流行的一種技術(shù),尤其是電子商務(wù)類的網(wǎng)站,多采用JSP。采用PHP的網(wǎng)站如新浪網(wǎng)(sina)、中國(guó)人(Chinaren)等,但由于PHP本身存在的一些缺點(diǎn),使得它不適合應(yīng)用于大型電子商務(wù)站點(diǎn),而更適合一些小型的商業(yè)站點(diǎn)。首先,PHP缺乏規(guī)模支持。其次,缺乏多層結(jié)構(gòu)支持。對(duì)于大負(fù)荷站點(diǎn),解決方法只有一個(gè):分布計(jì)算。數(shù)據(jù)庫(kù)、應(yīng)用邏輯層、表示邏輯層彼此分開,而且同層也可以根據(jù)流量分開,組成二維陣列。而PHP則缺乏這種支持。還有上面提到過的一點(diǎn),PHP提供的數(shù)據(jù)庫(kù)接口支持不統(tǒng)一,這就使得它不適合運(yùn)用在電子商務(wù)中。ASP和JSP則沒有以上缺陷,
16、ASP可以通過Microsoft Windowsd的COM/DCOM獲得ActiveX規(guī)模支持,通過DCOM和Transcation Server獲得結(jié)構(gòu)支持;JSP可以通過SUN Java的Java Class和EJB獲得規(guī)模支持,通過EJB/CORBA以及眾多廠商的Application Server獲得結(jié)構(gòu)支持。三者中,JSP應(yīng)該是未來發(fā)展的趨勢(shì)。世界上一些大的電子商務(wù)解決方案提供商都采用JSP/Servlet。比較出名的如IBM的Ebusiness,它的核心是采用JSP/Servlet的WebSphere;西方另外一個(gè)非常著名的電子商務(wù)軟件提供商,Intershop。它原來的產(chǎn)品Int
17、ershop1 2, 3, 4占據(jù)了主要的電子商務(wù)軟件份額。它們都是通過CGI來提供支持 的。但去年10月后它推出了Enfinity,一個(gè)采用JSP/Servlet的電子商務(wù)Application Server,而且聲言不再開發(fā)傳統(tǒng)軟件??偟膩碚f,ASP,PHP,JSP三者都有相當(dāng)數(shù)量的支持者,而這三者也各有所長(zhǎng),在開發(fā)過程中,我們應(yīng)該根據(jù)實(shí)際的需要來使用最合適的技術(shù),本系統(tǒng)則采用較新的JSP技術(shù),一方面JSP的安全性和跨平臺(tái)性比較好,另一方面,我也希望能從開發(fā)該系統(tǒng)的過程中,深入學(xué)習(xí)一下這門編程語(yǔ)言。1.2系統(tǒng)的開發(fā)意義Internet的發(fā)展,為改變傳統(tǒng)的商業(yè)運(yùn)作模式提供了一種技術(shù)上的可行性
18、的方案:利用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è)活動(dòng)中了,人們將這種交易模式稱為:電子商務(wù)。 當(dāng)今比較流行的網(wǎng)上購(gòu)物系統(tǒng)國(guó)外有“淘寶()”,國(guó)內(nèi)有“當(dāng)當(dāng)()”。它們都是相當(dāng)優(yōu)秀的電子商務(wù)網(wǎng)站,對(duì)其他的網(wǎng)站提供了良好的典范。設(shè)計(jì)中可以學(xué)習(xí)參考他們的思想,了解和熟悉整個(gè)網(wǎng)站的開發(fā)流程及完整的電子商務(wù)網(wǎng)站應(yīng)有的功能和注意事項(xiàng)。 設(shè)計(jì)和完成一個(gè)電子商務(wù)網(wǎng)站的
19、,將會(huì)牽涉到許多技術(shù)上的問題,如:動(dòng)態(tài)網(wǎng)頁(yè)制作技術(shù)的,后臺(tái)數(shù)據(jù)庫(kù)的設(shè)計(jì)和管理,通過實(shí)際的制作個(gè)網(wǎng)站,可以避免紙上談兵,在實(shí)踐中掌握上述技術(shù)的使用。1.3 Java Web開發(fā)技術(shù)介紹J2EE(Java 2 Platform Enterprise Edition)建立在J2SE(Java 2 Platform Standard Edition)的基礎(chǔ)上,為企業(yè)級(jí)應(yīng)用提供了完整、穩(wěn)定、安全和快速的Java平臺(tái)。J2EE提供的Web開發(fā)技術(shù)主要支持兩類軟件的開發(fā)和應(yīng)用,一類是做高級(jí)信息系統(tǒng)框架的Web應(yīng)用服務(wù)器(Web Applcation Server),另一類是在Web應(yīng)用服務(wù)運(yùn)行的Web應(yīng)用(
20、Web Application)。J2EE提供了企業(yè)級(jí)計(jì)算模型和運(yùn)行環(huán)境,用于開發(fā)和部署多層分布式結(jié)構(gòu)的應(yīng)用模型。該模型具有重用組件的能力、基于擴(kuò)展標(biāo)記語(yǔ)言(XML)的數(shù)據(jù)交換、統(tǒng)一的安全模式和靈活的事務(wù)控制。它是通過提供企業(yè)計(jì)算環(huán)境所必需的各種服務(wù),使得部署在J2EE平臺(tái)上的多層應(yīng)用可以實(shí)現(xiàn)高可用性、安全性、可擴(kuò)展性和可靠性。目前,Web動(dòng)態(tài)網(wǎng)站的開發(fā)技術(shù)很多,如Servlet,JSP,ASP,PHP等,這些技術(shù)都得到了廣泛應(yīng)用,其中JSP技術(shù)的發(fā)展前景最明朗。JSP技術(shù)的前身是Servlet。Servlet是由Java語(yǔ)言編寫,運(yùn)行在Tomcat服務(wù)器中,能夠主動(dòng)生成HTML標(biāo)記和客戶端需
21、要的數(shù)據(jù),將生成的數(shù)語(yǔ)返回到客戶端。與傳統(tǒng)的CGI和許多其他類似CGI技術(shù)相比,Java Servlet具有更高的效率,更容易使用,功能更強(qiáng)大,具有更好的可移植性,更節(jié)省投資。其詳細(xì)信息表如表1-1所示:表1-1 Servlet技術(shù)優(yōu)勢(shì)優(yōu)勢(shì)說明高效在傳統(tǒng)的CGI中,每個(gè)請(qǐng)求都要啟動(dòng)一個(gè)新的進(jìn)程,如果CGI程序本身執(zhí)行時(shí)間較短,啟動(dòng)進(jìn)程所需要的開銷很可能反而超過實(shí)際執(zhí)行時(shí)間。而在Servlet中,每個(gè)請(qǐng)求由一個(gè)輕量級(jí)的Java線程處理(而不是重量級(jí)的操作系統(tǒng)進(jìn)程)在傳統(tǒng)CGI中,如果對(duì)同一CGI程序有N個(gè)并發(fā)請(qǐng)求,則該CGI程序的代碼在內(nèi)存中重復(fù)裝載了N次;而對(duì)于Servlet,處理請(qǐng)求的是N個(gè)
22、線程,只需要一份Servlet類代碼。在性能優(yōu)化方面,Servlet也比CGI有著更多的選擇,比如緩沖以前的計(jì)算結(jié)果,保持?jǐn)?shù)據(jù)庫(kù)連接的活動(dòng)等等方便Servlet提供了大量的實(shí)用工具例程,例如自動(dòng)地解析和解碼HTML表單數(shù)據(jù)、讀取和設(shè)置HTTP頭,處理Cookie、跟蹤會(huì)話狀態(tài)等功能強(qiáng)大在Servlet中,許多使用傳統(tǒng)CGI程序很難完成的任務(wù)都可以輕松地完成。例如,Servlet能夠直接和Web服務(wù)器交互,而普通的CGI程序不能。Servlet還能夠在各個(gè)程序之間共享數(shù)據(jù),使得數(shù)據(jù)庫(kù)連接池之類的功能很容易實(shí)現(xiàn)可移植性好Servlet用Java編寫,Servlet API具有完善的標(biāo)準(zhǔn)。為I-Pl
23、anet Enterprise Server寫的Servlet無需任何實(shí)質(zhì)上的改動(dòng)即可移植到Apache、Microsoft IIS 或者WebStar。幾乎所有的主流服務(wù)器都直接或通過插件支持Servlet節(jié)省投資不僅有許多廉價(jià)甚至免費(fèi)的Web服務(wù)器可供個(gè)人或小規(guī)模網(wǎng)站使用,而且對(duì)于現(xiàn)有的服務(wù)器,加上這部分功能也往往是免費(fèi)的但遺憾的是,Servlet具有一個(gè)致命缺點(diǎn),就是所有響應(yīng)代碼都是通過Servlet程序生成的,如HTML標(biāo)記。Servlet程序中大量的代碼都是用來生成這些HTML標(biāo)記響用代碼,只有其中少部分代碼用作數(shù)據(jù)的處理和響應(yīng)。開發(fā)Servlet程序起來要求較高。Servlet產(chǎn)生
24、之后,沒有像PHP和ASP那樣,快速得到應(yīng)用。因此Sun公司在結(jié)合了Servlet技術(shù)和Asp技術(shù)等特點(diǎn),又推出了JSP技術(shù),JSP技術(shù)完全繼承了Servlet技術(shù)的優(yōu)勢(shì),并具備了新的優(yōu)勢(shì)。如表1-2所示。表1-2JSP優(yōu)勢(shì)優(yōu)勢(shì)說明數(shù)據(jù)庫(kù)內(nèi)容和顯示分離Web頁(yè)面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁(yè)面。使用了JSP標(biāo)識(shí)或者小腳本來產(chǎn)生頁(yè)面上的動(dòng)態(tài)內(nèi)容。產(chǎn)生內(nèi)容的邏輯被封裝在標(biāo)識(shí)和JavaBeans群組件中,并且捆綁在小腳本中,所有的腳本在服務(wù)器端執(zhí)行。如果核心邏輯被封閉在標(biāo)識(shí)和Beans中,那么其他人,如Web管理人員和頁(yè)面設(shè)計(jì)者,能夠編輯和使用JSP頁(yè)面,而不影響內(nèi)容的產(chǎn)
25、生。在服務(wù)器端,JSP引擎解釋JSP標(biāo)識(shí),產(chǎn)生所請(qǐng)求的內(nèi)容(例如,通過存取JavaBeans群組件,使用JDBC技術(shù)存取數(shù)據(jù)庫(kù)),并且將結(jié)果以HTML(或者XML)頁(yè)面的形式發(fā)送回瀏覽器。這有助于作者保護(hù)自己的代碼,而又保證任何基于HTML的Web瀏覽器的完全可用性可重用組件絕大多數(shù)JSP頁(yè)面依賴可重用且跨平臺(tái)的組件(如JavaBeans或者Enterprise JavaBeans)來執(zhí)行應(yīng)用程序所要求的更為復(fù)雜的處理。開發(fā)人員能夠共享和交換執(zhí)行普通操作的組件,或者使得這些組件為更多的使用者或者用戶團(tuán)本所使用?;诮M件的方法加速了總體開發(fā)過程。采用標(biāo)識(shí)簡(jiǎn)化頁(yè)面開發(fā)Web頁(yè)面開發(fā)人員不會(huì)都是熟悉
26、腳本語(yǔ)言的程序設(shè)計(jì)人員。JSP技術(shù)封裝了許多易用的功能,用于在與JSP相關(guān)的XML的標(biāo)識(shí)中生成動(dòng)態(tài)內(nèi)容。標(biāo)準(zhǔn)的JSP標(biāo)識(shí)能夠存取和實(shí)例化JavaBeans組件,設(shè)定或者檢索群組件屬性,下載Applet,以及執(zhí)行用其他方法更難于編碼和耗時(shí)的功能一種技術(shù)功能越是強(qiáng)大,其復(fù)雜性就越高,JSP技術(shù)也不例化。在使用JSP技術(shù)編寫高效,安全的Web網(wǎng)站的同時(shí),JSP也面臨入門比較難的問題。與ASP,PHP相比,這三種技術(shù)各其優(yōu)點(diǎn)。其詳細(xì)信息如表1-3所示:表1-3 JSP、PHP和ASP技術(shù)比較參數(shù)JSPASPPHP運(yùn)行速度快較快較快運(yùn)行耗時(shí)較小較大較大難易程度容易掌握簡(jiǎn)單簡(jiǎn)單運(yùn)行平臺(tái)絕大部分平臺(tái)均可Wi
27、ndows平臺(tái)Windows/Unix平臺(tái)擴(kuò)展性好較好較差安全性好較差好數(shù)據(jù)庫(kù)支持多多多廠商支持多較少較多對(duì)XML的支持支持不支持支持函數(shù)支持多較少多對(duì)組件的支持支持支持不支持對(duì)分布式處理的支持支持支持不支持應(yīng)用程序較廣較廣較廣其中JSP應(yīng)該是未來發(fā)展的趨勢(shì)。世界上一些大的電子商務(wù)解決方案提供商都采用JSP/Servlet。比較IBM的E-business,它的核心的采用JSP/Servlet的Web Sphere.它推出的Enfinity就是采用JSP/Servlet的電子商務(wù)Application Server。1.4 本系統(tǒng)概述本網(wǎng)上書店系統(tǒng)采用的開發(fā)工具是Eclipse,采用Tomca
28、t作為Web服務(wù)器,用SQL SERVER 2000作為數(shù)據(jù)庫(kù),編程語(yǔ)言為Java,JavaScript。顯示的頁(yè)面為JSP頁(yè)面,另外用CSS來對(duì)頁(yè)面的排版和美觀。本網(wǎng)上書店系統(tǒng)采用B/S模式。主要供兩個(gè)角色使用:普通用戶和管理員。普通用戶可以查看圖書,訂購(gòu)圖書,登錄,注冊(cè),修改密碼以及發(fā)送訂單和給管理員留言等;管理員可以對(duì)圖書進(jìn)行增刪改查等維護(hù)工作,以及查看留言和訂單等。1.5 開發(fā)所用軟件介紹1.5.1 Eclipse介紹eclipse-galileoEclipse 是一個(gè)開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。
29、幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。 Eclipse最初是由IBM公司開發(fā)的替代商業(yè)軟件Visual Age for Java的下一代IDE開發(fā)環(huán)境,2001年11月貢獻(xiàn)給開源社區(qū),現(xiàn)在它由非營(yíng)利軟件供應(yīng)商聯(lián)盟Eclipse基金會(huì)(Eclipse Foundation)管理。 2003年,Eclipse 3.0選擇OSGi服務(wù)平臺(tái)規(guī)范為運(yùn)行時(shí)架構(gòu)。 2007年6月,穩(wěn)定版3.3發(fā)布。2008年6月發(fā)布代號(hào)為Ganymede的3.4版。2009年7月發(fā)布代號(hào)為GALILEO的3.5版。 Eclipse
30、是著名的跨平臺(tái)的自由集成開發(fā)環(huán)境(IDE)。最初主要用來Java語(yǔ)言開發(fā),但是目前亦有人通過插件使其作為其他計(jì)算機(jī)語(yǔ)言比如C+和Python的開發(fā)工具。Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得Eclipse擁有其他功能相對(duì)固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以Eclipse為框架開發(fā)自己的IDE。 Eclipse 最初由OTI和IBM兩家公司的IDE產(chǎn)品開發(fā)組創(chuàng)建,起始于1999年4月。IBM提供了最初的Eclipse代碼基礎(chǔ),包括Platform、JDT 和PDE。目前由IBM牽頭,圍繞著Eclipse項(xiàng)目已經(jīng)發(fā)展成為了一個(gè)龐大的Eclipse聯(lián)盟,有150多
31、家軟件公司參與到Eclipse項(xiàng)目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一個(gè)開發(fā)源碼項(xiàng)目,它其實(shí)是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其開放源碼,任何人都可以免費(fèi)得到,并可以在此基礎(chǔ)上開發(fā)各自的插件,因此越來越受人們關(guān)注。近期還有包括Oracle在內(nèi)的許多大公司也紛紛加入了該項(xiàng)目,并宣稱Eclipse將來能成為可進(jìn)行任何語(yǔ)言開發(fā)的IDE集大成者,使用者只需下載各種語(yǔ)言的插件即可。 雖然大多數(shù)用戶很樂于將 Eclipse 當(dāng)作 Java IDE
32、 來使用,但 Eclipse 的目標(biāo)不僅限于此。Eclipse 還包括插件開發(fā)環(huán)境(Plug-in Development Environment,PDE),這個(gè)組件主要針對(duì)希望擴(kuò)展 Eclipse 的軟件開發(fā)人員,因?yàn)樗试S他們構(gòu)建與 Eclipse 環(huán)境無縫集成的工具。由于 Eclipse 中的每樣?xùn)|西都是插件,對(duì)于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場(chǎng)所。 基于 Eclipse 的應(yīng)用程序的突出例子是 IBM 的 WebSphere Studio Workbench,它構(gòu)成了 IBM Java 開發(fā)工具系列的基礎(chǔ)。例如
33、,WebSphere Studio Application Developer 添加了對(duì) JSP、servlet、EJB、XML、Web 服務(wù)和數(shù)據(jù)庫(kù)訪問的支持。 Eclipse的主要組成: Eclipse是一個(gè)開放源代碼的軟件開發(fā)項(xiàng)目,專注于為高度集成的工具開發(fā)提供一個(gè)全功能的、具有商業(yè)品質(zhì)的工業(yè)平臺(tái)。它主要由Eclipse項(xiàng)目、Eclipse工具項(xiàng)目和Eclipse技術(shù)項(xiàng)目三個(gè)項(xiàng)目組成,具體包括四個(gè)部分組成Eclipse Platform、JDT、CDT和PDE.JDT支持Java開發(fā)、CDT支持C開發(fā)、PDE用來支持插件開發(fā),Eclipse Platform則是一個(gè)開放的可擴(kuò)展IDE,提
34、供了一個(gè)通用的開發(fā)平臺(tái)。它提供建造塊和構(gòu)造并運(yùn)行集成軟件開發(fā)工具的基礎(chǔ)。Eclipse Platform允許工具建造者獨(dú)立開發(fā)與他人工具無縫集成的工具從而無須分辨一個(gè)工具功能在哪里結(jié)束,而另一個(gè)工具功能在哪里開始。 Eclipse SDK(軟件開發(fā)者包)是Eclipse Platform、JDT和PDE所生產(chǎn)的組件合并,它們可以一次下載。這些部分在一起提供了一個(gè)具有豐富特性的開發(fā)環(huán)境,允許開發(fā)者有效地建造可以無縫集成到Eclipse Platform中的工具。Eclipse SDK由Eclipse項(xiàng)目生產(chǎn)的工具和來自其它開放源代碼的第三方軟件組合而成。Eclipse項(xiàng)目生產(chǎn)的軟件以 CPL發(fā)布
35、,第三方組件有各自自身的許可協(xié)議。1.5.2 Tomcat介紹Tomcat是Apache Jakarta軟件組織的一個(gè)子項(xiàng)目,Tomcat是一個(gè)JSP/Servlet容器,它是在SUN公司的JSWDK(Java Server Web Development Kit)基礎(chǔ)上發(fā)展起來的一個(gè)JSP和Servlet規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),使用Tomcat可以體驗(yàn)JSP和Servlet的最新規(guī)范。經(jīng)過多年的發(fā)展,Tomcat不僅是JSP和Servlet規(guī)范的標(biāo)準(zhǔn)實(shí)現(xiàn),而且具備了很多商業(yè)Java Servlet容器的特性,并被一些企業(yè)用于商業(yè)用途。Tomcat 很受廣大程序員的喜歡,因?yàn)樗\(yùn)行時(shí)占用的系統(tǒng)資源小,
36、擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)應(yīng)用系統(tǒng)常用的功能;而且它還在不斷地改進(jìn),任何一個(gè)感興趣的程序員都可以更改它或在其中加入新的功能。Tomcat 是一個(gè)輕量級(jí)應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng)對(duì)HTML 頁(yè)面的訪問請(qǐng)求。實(shí)際上Tomcat 部分是Apache 服務(wù)器的擴(kuò)展,但它是獨(dú)立運(yùn)行的,所以當(dāng)你運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。 這里的訣竅是,當(dāng)配置正確時(shí),Apache 為HTML頁(yè)面服務(wù),而T
37、omcat 實(shí)際上運(yùn)行JSP 頁(yè)面和Servlet。另外,Tomcat和IIS、Apache等Web服務(wù)器一樣,具有處理HTML頁(yè)面的功能,另外它還是一個(gè)Servlet和JSP容器,獨(dú)立的Servlet容器是Tomcat的默認(rèn)模式。不過,Tomcat處理靜態(tài)HTML的能力不如Apache服務(wù)器。目前Tomcat最新版本為7.0.12 Released 。1.5.3 SQL Server 2000 介紹SQL Server 是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同開發(fā)的,于1988 年推出了第一個(gè)OS/2 版本。在Windows
38、NT 推出后,Microsoft與Sybase 在SQL Server 的開發(fā)上就分道揚(yáng)鑣了。Microsoft 將SQL Server 移植到Windows NT系統(tǒng)上,專注于開發(fā)推廣SQL Server 的Windows NT 版本;Sybase 則較專注于SQL Server在UNIX 操作系統(tǒng)上的應(yīng)用。在本書中介紹的是Microsoft SQL Server 以后簡(jiǎn)稱為SQL Server或MS SQL Server。SQL Server 2000 是Microsoft 公司推出的SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng)的一個(gè)版本。該版本繼承了SQL Server 7.0 版本的優(yōu)點(diǎn)同時(shí)又
39、比它增加了許多更先進(jìn)的功能,具有使用方便,可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn),可跨越從運(yùn)行Microsoft Windows 98 的膝上型電腦到運(yùn)行Microsoft Windows 2000 的大型多處理器的服務(wù)器等多種平臺(tái)使用。二 系統(tǒng)需求分析與總體設(shè)計(jì)2.1 系統(tǒng)可行性分析2.1.1技術(shù)可行性分析硬件要求:主要配置為CPU(PII300以上)、內(nèi)存(64M以上)、顯卡(4M以上)以及大容量硬盤(10G以上)等。軟件要求:系統(tǒng)采用Eclipse和SQL Server 2000開發(fā),用JSP制作系統(tǒng)的用戶界面,SQL Server 2000制作后臺(tái)數(shù)據(jù)庫(kù),兩者結(jié)合完成系統(tǒng)功能,可運(yùn)行在W
40、indows98及以上的系列操作系統(tǒng)上。2.1.2 經(jīng)濟(jì)可行性分析由于本系統(tǒng)開發(fā)的費(fèi)用比較低,而在交付使用之后幾年內(nèi)所得的效益完全超過軟件的開發(fā)費(fèi)用,此后就會(huì)帶來相應(yīng)的經(jīng)濟(jì)效益,也會(huì)因?yàn)榇塑浖母咝?、?zhǔn)確性、及時(shí)性贏得廣大客戶的尊重,取得無形的社會(huì)效益。2.1.3操作可行性本系統(tǒng)運(yùn)行在通用的Windows操作系統(tǒng)上,具有瀏覽器的前臺(tái)。具有簡(jiǎn)單易學(xué),使用方便等特點(diǎn),熟悉計(jì)算機(jī)的人員不需要再經(jīng)過專門的培訓(xùn)即可熟練操作。2.1.4法律可行性本系統(tǒng)是完全有計(jì)算機(jī)學(xué)院的學(xué)生單獨(dú)開發(fā)完成的軟件,使用的是Eclipse和SQL Server2000等授權(quán)軟件,它不是模仿他人已有的軟件,在軟件中也不會(huì)設(shè)置各
41、種邏輯陷阱、特洛伊木馬以及其它非法程序,也不會(huì)借此發(fā)布非法事件,故在法律上、專利問題上不會(huì)存在違反法律的行為。2.2 系統(tǒng)需求分析近年來,隨著Internet的訊速崛起,互聯(lián)網(wǎng)已日益成為收集提供信息的最佳渠道,并逐步進(jìn)入傳統(tǒng)的流通領(lǐng)域,于是電子商務(wù)開始流行起來,越來越多的商家在網(wǎng)上建起在線商店,向消費(fèi)者展示出一種新穎的購(gòu)物理念。網(wǎng)上書店系統(tǒng)作為B2B、B2C(Business to Customer,企業(yè)對(duì)消費(fèi)者),C2C(Customer to Customer,消費(fèi)者對(duì)消費(fèi)者)電子商務(wù)的前端商務(wù)平臺(tái),在其商務(wù)活動(dòng)的全過程中起著舉足輕重的作用。網(wǎng)上購(gòu)物是一種具有交互功能的商業(yè)信息系統(tǒng),它向用
42、戶提供靜態(tài)和動(dòng)態(tài)兩類信息資源。所謂靜態(tài)信息是指那些經(jīng)常變動(dòng)或更新的資源,如公司簡(jiǎn)介,管理規(guī)范和公司制度等;動(dòng)態(tài)信息是指隨時(shí)變化的信息,如商口報(bào)價(jià),會(huì)議安排和培訓(xùn)信息等。網(wǎng)上購(gòu)物系統(tǒng)具有強(qiáng)大的交互功能,可隨商家和用戶方便地傳遞信息,完成電子貿(mào)易或EDI交易。這種全新的交易方式實(shí)現(xiàn)了公司間文檔與資金的無紙化交換。購(gòu)物系統(tǒng)作為電子商務(wù)平臺(tái)實(shí)現(xiàn)的一個(gè)方面,在推動(dòng)電子商務(wù)的發(fā)展上起著非常重要的作用。2.3系統(tǒng)總體設(shè)計(jì)2.3.1 MVC模式介紹MVC模式即:“Model-View-Controller”,就是“模式-視圖-控制器”。視圖(View)代表用戶交互界面,對(duì)于Web應(yīng)用來說,可以概括為HTML界
43、面,但有可能為XHTML,XML和Applet。模型(Model)就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定??刂疲–ontroller)可以理解為從用戶接收請(qǐng)求,將模型與視圖匹配在一起,共同完成用戶的請(qǐng)求。MVC應(yīng)用程序由這三個(gè)部分組成。模型,視圖與控制器的分離,使得一個(gè)模型可以具有多個(gè)示視圖。如果用戶通過某個(gè)視圖的控制器改變了模型的數(shù)據(jù),所有其他依賴于這些數(shù)據(jù)的視圖都反映到這些變化。因此,無論何時(shí)發(fā)生了何種數(shù)據(jù)變化,控制器都會(huì)將變化通知所有的視圖,導(dǎo)致示圖的更新。這實(shí)際上是一種模型的變化-傳播機(jī)制?,F(xiàn)在我們來了解一下MVC三個(gè)部分在JSP架構(gòu)中的對(duì)應(yīng)關(guān)系位置。View處于Web層或者說是C
44、lient層,通常是JSP/Servlet,即頁(yè)面顯示部分。Controller也處于Web層,通常用Servlet來實(shí)現(xiàn),即頁(yè)面顯示的邏輯部分實(shí)現(xiàn)。Model處于中間層,通常用服務(wù)端的JavaBean或者EJB實(shí)現(xiàn),即業(yè)務(wù)邏輯部分的實(shí)現(xiàn)。其形式如圖2-1所示。瀏覽器控制器ServletJSP視圖JavaBean模型 應(yīng)用服務(wù)器Database數(shù)據(jù)庫(kù) 1請(qǐng)求2實(shí)例化3數(shù)據(jù)處理4調(diào)用6響用5調(diào)用圖2-1 MVC三層架構(gòu) 2.3.2 系統(tǒng)流程圖整個(gè)系統(tǒng)的流程圖如圖2-2所示。用戶管理員管理員登錄已登錄NOYES查看圖書增刪改查查看留言查看訂單修改密碼退出登錄用戶登錄通過NO繼續(xù)YES查看圖書查找圖
45、書放入購(gòu)物車通過NOYES發(fā)送訂單退出登錄注冊(cè)2-2系統(tǒng)流程圖2.4 數(shù)據(jù)庫(kù)設(shè)計(jì)2.4.1數(shù)據(jù)庫(kù)ER圖實(shí)體: 關(guān)系:屬性:bookspresspriceauthornamebidpresentationdiscountrdatetypereserve圖2-3 books屬性圖customerzipmailboxconsumptionaddresstelephonepasswordrealnamenicknamecid圖2-4 customer屬性圖managerrrmidpassword圖2-5 manager屬性圖issdateorderssumcidpaypatternpresentati
46、onoid圖2-6 orders 屬性圖itembidcidcountsubtotal圖2-7 item 屬性圖messagecontentdatemessageId cid圖2-8 message 屬性圖n1customerorders發(fā)送patterncidsumpresentationissdateoid圖2-9 發(fā)送訂單n1發(fā)送messagercontentmessageIdcustomercid圖2-10 發(fā)送留言n1manger新增rdatebooksbidmid圖2-11 新增圖書2.4.2 表格(1)表menager。記錄管理員的賬號(hào)與密碼。(2)表customer。記錄客戶信
47、息。(3)表books。記錄書信息。(4)表orders。記錄訂單信息。(5)表item。記錄著購(gòu)物車的一條記錄的信息。(6)表message。記錄著留言的信息。三 系統(tǒng)詳細(xì)設(shè)計(jì)3.1數(shù)據(jù)庫(kù)連接3.1.1 JDBC介紹JDBC(Java Data Base Connectivity ,Java數(shù)據(jù)庫(kù)連接)是一種用于執(zhí)行SQL語(yǔ)句的Java API,可以為多種關(guān)系數(shù)據(jù)庫(kù)提供統(tǒng)一的訪問,它是由一組用Java語(yǔ)言編寫的類和接口組成。JDBC提供了一種基準(zhǔn),據(jù)此可以構(gòu)建更高級(jí)的工具和接口,使數(shù)據(jù)庫(kù)開發(fā)人員能夠使用純Java語(yǔ)言編寫完整的數(shù)據(jù)庫(kù)應(yīng)用程序。JDBC是Sun提供的一套數(shù)據(jù)庫(kù)編程接口API函數(shù)
48、,由Java語(yǔ)言編寫的類,界面組成。用JDBC寫的程序能夠自動(dòng)地將SQL語(yǔ)句傳送給相應(yīng)的數(shù)據(jù)庫(kù)管理系統(tǒng)。不但如此,使用Java編寫的應(yīng)用程序可以在任何支持Java的平臺(tái)上運(yùn)行,不必在不同的平臺(tái)上編寫不同的應(yīng)用。Java和JDBC的結(jié)合可以讓開發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序時(shí)真正實(shí)現(xiàn)“Write Once,Run Everywhere!”JDBC的用法:本系統(tǒng)中運(yùn)應(yīng)的的是“四層應(yīng)用模型”,即:命令先是被發(fā)送到服務(wù)的“中間層”即業(yè)務(wù)邏輯層,然后由它調(diào)用數(shù)據(jù)庫(kù)訪問層稱為O/R層。最后數(shù)據(jù)庫(kù)訪問層對(duì)SQL語(yǔ)句進(jìn)行處理,通過JDBC訪問數(shù)據(jù)庫(kù),最后將結(jié)果返回給中間層,再由中間層將結(jié)果返回給客戶。如圖3-1所示。Htt
49、p,RMI等客戶機(jī)業(yè)務(wù)邏輯中間層O/R映射,中間層JDBC數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)協(xié)議圖3-1四層應(yīng)用模型3.2 系統(tǒng)功能模塊3.2.1 登錄模塊管理員想要進(jìn)行相關(guān)操作或者用戶想要購(gòu)買書都要進(jìn)行登錄。輸入的賬號(hào)和密碼將提交到相應(yīng)的Servlet類中進(jìn)行處理。如果賬號(hào)和密碼都正確,則通過,否則不能過。如圖3-2所示。YES響應(yīng)NO請(qǐng)求 登錄頁(yè)面通過Servlet圖3-2 登錄模塊流程圖3.2.2注冊(cè)模塊當(dāng)用戶想要?jiǎng)?chuàng)建一個(gè)賬號(hào)時(shí),便要進(jìn)行注冊(cè)。通過注冊(cè)頁(yè)面,用戶輸入注冊(cè)信息,點(diǎn)擊“注冊(cè)”后,信息首先將提交到過濾器,判斷輸入的信息是否合法。如果不合法,則返回注冊(cè)界面,重新輸入;如果合法過濾器則將信息進(jìn)一步提交給
50、Servlet處理,Servlet調(diào)用數(shù)據(jù)庫(kù)操作類,將信息保存到數(shù)據(jù)庫(kù)中。如圖3-3所示。YES保存調(diào)用響應(yīng)NO請(qǐng)求 注冊(cè)頁(yè)面過濾器合法Servlet數(shù)據(jù)庫(kù)處理類數(shù)據(jù)庫(kù)響應(yīng)圖3-3 注冊(cè)模塊流程圖3.2.3 圖書操作模塊(1)新增。當(dāng)管理員登錄之后,便可以向數(shù)據(jù)庫(kù)中新增圖書。通過新增頁(yè)面,管理員輸入要新增的書的信息,點(diǎn)擊“新增”之后,信息便被提交到過濾器中。過濾器判斷管理員輸入的是否合法。如果不合法,返回新增頁(yè)面;如果合法,則過濾器將信息進(jìn)一步提交給Servlet處理,Servlet將調(diào)用數(shù)據(jù)庫(kù)處理類,將信息保存到數(shù)據(jù)庫(kù)中。如圖3-4所示。響應(yīng)保存NOYES調(diào)用合法Servlet數(shù)據(jù)庫(kù)處理類數(shù)
51、據(jù)庫(kù) 新增頁(yè)面過濾器響應(yīng)圖3-4 新增模塊流程圖(2)刪除。當(dāng)管理員登錄之后,可以根據(jù)書的編號(hào),對(duì)書進(jìn)行刪除。通過點(diǎn)擊“刪除”,將要?jiǎng)h除的書的編號(hào)提交到Servlet中,Servlet便根據(jù)書的編號(hào)調(diào)用數(shù)據(jù)庫(kù)處理類,將書從數(shù)據(jù)庫(kù)中刪除。如圖3-5所示。刪除請(qǐng)求調(diào)用 刪除頁(yè)面數(shù)據(jù)庫(kù)處理類數(shù)據(jù)庫(kù) Servlet響應(yīng)圖3-5 刪除模塊流程圖(3)修改。當(dāng)管理員登錄之后,可以對(duì)書信息進(jìn)行修改。通過點(diǎn)擊“修改”, 信息便被提交到過濾器中。過濾器判斷管理員輸入的是否合法。如果不合法,返回新增頁(yè)面;如果合法,則過濾器將信息進(jìn)一步提交給Servlet處理,Servlet將調(diào)用數(shù)據(jù)庫(kù)處理類,將信息保存到數(shù)據(jù)庫(kù)中
52、。該流程圖和圖3-4類似。(4)查找。管理員和客戶都可以對(duì)書進(jìn)行查找。通過點(diǎn)擊“查找”,關(guān)鍵字和查找的內(nèi)容便被提交到Servlet中,Servlet將調(diào)用數(shù)據(jù)庫(kù)處理類,將查找到的結(jié)果返回到查找頁(yè)面。如圖3-6所示:調(diào)用查找響應(yīng)請(qǐng)求 刪除頁(yè)面數(shù)據(jù)庫(kù)處理類數(shù)據(jù)庫(kù) Servlet返回結(jié)果圖3-6 查找模塊流程圖3.2.4 購(gòu)物車模塊購(gòu)物車模塊是本系統(tǒng)中一個(gè)非常重要的模塊。一個(gè)購(gòu)物車包括以下幾項(xiàng):1 客戶的昵稱(昵稱是唯一的,可以用來標(biāo)識(shí)不同的客戶)。表示這個(gè)購(gòu)物車是誰的??梢詾榭?,但在進(jìn)行結(jié)算時(shí),這個(gè)值必須初始化,即客戶必須已登錄。2 一個(gè)由Item項(xiàng)組成的集合。Item是由書號(hào),書名,數(shù)量,小計(jì)組
53、成的。一個(gè)購(gòu)物車可以有0個(gè)或多個(gè)Item項(xiàng)。當(dāng)一本書第一次加入購(gòu)物車時(shí),便新建一個(gè)Item項(xiàng)。當(dāng)再次加入書時(shí),數(shù)量加1,并且小計(jì)加上書的單價(jià)。當(dāng)一本書從購(gòu)物車中刪除時(shí),數(shù)量減1,并且小計(jì)減去書的單價(jià)。如果某個(gè)Item項(xiàng)的數(shù)量為0,則刪去該項(xiàng)。3 總計(jì)。所有小計(jì)的和。流程圖如3-7所示。書放入是否有購(gòu)物車是否登錄創(chuàng)建一個(gè)匿名購(gòu)物車創(chuàng)建一個(gè)帶呢稱的購(gòu)物車該書是否為第一次加入購(gòu)物車書刪除對(duì)應(yīng)的Item的count減1。小計(jì)減去單價(jià)購(gòu)物車該Item項(xiàng)的count是否為0刪除該Item項(xiàng)繼續(xù)新建Item項(xiàng)對(duì)應(yīng)的Item項(xiàng)加1,小計(jì)加上單價(jià)繼續(xù)NOYESNOYESYESYESYES圖3-7購(gòu)物車模塊流程圖
54、3.2.5 訂單模塊當(dāng)客戶購(gòu)物完畢要發(fā)送訂單時(shí),如果未登錄,則先進(jìn)行登錄。如果登錄了,且購(gòu)物車?yán)镉袌D書,則進(jìn)入訂單發(fā)送頁(yè)面。這時(shí),客戶還可以修改購(gòu)物車或者個(gè)人信息。點(diǎn)擊“提交定單”之后,信息將提交到Servlet。Servlet調(diào)用數(shù)據(jù)庫(kù)處理類,將信息保存到數(shù)據(jù)庫(kù)中。而管理員則可以查看所有的訂單。如圖3-8所示.。訂單發(fā)送頁(yè)面修改提交訂單修改個(gè)人信息或者購(gòu)物車Servlet數(shù)據(jù)庫(kù)處理類數(shù)據(jù)庫(kù)交易成功頁(yè)面NOYES請(qǐng)求調(diào)用保存響應(yīng)圖3-8訂單模塊流程圖3.2.6 留言模塊用戶可以通過留言模塊給管理員留言,點(diǎn)擊“提交”之后,信息將被提交到Servlet。Servlet將調(diào)用數(shù)據(jù)庫(kù)處理類,將信息保存
55、到數(shù)據(jù)庫(kù)中。而管理員則可以查看所有留言并刪除留言。管理員點(diǎn)擊“刪除”之后,信息將被提交到Servlet。Servlet將調(diào)用數(shù)據(jù)庫(kù)處理類,將留言從數(shù)據(jù)庫(kù)中刪除。如圖3-9所示。用戶Servlet留言頁(yè)面數(shù)據(jù)庫(kù)處理類數(shù)據(jù)庫(kù)請(qǐng)求調(diào)用保存響應(yīng)請(qǐng)求調(diào)用刪除管理員留言頁(yè)面Servlet響應(yīng)數(shù)據(jù)庫(kù)處理類數(shù)據(jù)庫(kù)圖3-9留言模塊流程圖3.2.7 信息修改模塊用戶和管理員登錄之后都可以修改自己的密碼。另處,用戶在發(fā)送訂單之前也可以修改個(gè)人信息如:收獲地址,聯(lián)系電話等。(1)當(dāng)修改密碼時(shí),信息將會(huì)被提交到Servlet,Servlet判斷原密碼是否正確和兩次密碼輸入是否一致。若原密碼不正確或者兩次密碼輸入不一致,則返回修改頁(yè)面重新輸入。若兩者都無誤,則調(diào)用數(shù)據(jù)庫(kù)處理類,將新密碼保存到數(shù)據(jù)庫(kù)中。修改成功。如圖3-10所示。密碼修改Servlet原密碼是否正確兩次密碼是否一致數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)處理類YESNOYESNO請(qǐng)求保存圖3-10密碼修改流程圖(2)當(dāng)用戶修改個(gè)人信息時(shí),信息首先將被提交到過濾器中,如果輸入不合法,則返回修改頁(yè)面。如果合法,則信息會(huì)進(jìn)一步提交到Servlet中,Servlet將調(diào)用數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 62148-11:2024 EN-FR Fibre optic active components and devices - Package and interface standards - Part 11: 14-pin modulator integrated laser diode modules and pump laser
- 【正版授權(quán)】 ISO 18935:2025 EN Imaging materials - Colour images - Determination of water resistance of printed colour images
- 2025年建筑安全員知識(shí)題庫(kù)及答案
- 2025-2030年中國(guó)采血器市場(chǎng)發(fā)展?fàn)顩r及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)薯片市場(chǎng)運(yùn)行態(tài)勢(shì)與投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)營(yíng)養(yǎng)碘鹽市場(chǎng)發(fā)展?fàn)顩r及營(yíng)銷戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)自動(dòng)光學(xué)檢測(cè)儀(AOI)市場(chǎng)運(yùn)營(yíng)狀況及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)絕熱隔音材料產(chǎn)業(yè)運(yùn)行狀況與投資策略研究報(bào)告
- 2025-2030年中國(guó)電解金屬錳行業(yè)前景展望規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)電站設(shè)備行業(yè)運(yùn)行態(tài)勢(shì)及發(fā)展趨勢(shì)分析報(bào)告
- 《齊桓晉文之事》+課件+2023-2024學(xué)年統(tǒng)編版必修下冊(cè)+
- 《創(chuàng)傷失血性休克中國(guó)急診專家共識(shí)(2023)》解讀課件
- 八年級(jí)美術(shù)下冊(cè)第1課文明之光省公開課一等獎(jiǎng)新名師課獲獎(jiǎng)?wù)n件
- 2024年全國(guó)體育單招英語(yǔ)考卷和答案
- 食品安全管理制度可打印【7】
- 河北省邯鄲市磁縣2024屆中考數(shù)學(xué)模試卷含解析
- 2024年四川省南充市中考物理試卷真題(含官方答案)
- 2024年學(xué)位法學(xué)習(xí)解讀課件
- 2024年江蘇農(nóng)牧科技職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)帶答案
- 【基于PLC的停車場(chǎng)車位控制系統(tǒng)設(shè)計(jì)11000字(論文)】
- GB/T 43947-2024低速線控底盤通用技術(shù)要求
評(píng)論
0/150
提交評(píng)論