版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第十一講JSP項(xiàng)目設(shè)計(jì)10課時(450分鐘)本課目標(biāo)理解電子書城的基本設(shè)計(jì)思想熟悉系統(tǒng)需求分析、系統(tǒng)功能模塊設(shè)計(jì)、系統(tǒng)界面設(shè)計(jì)、系統(tǒng)主要流程設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)和詳細(xì)設(shè)計(jì)
知識理解電子書城的基本設(shè)計(jì)思想結(jié)合其他相關(guān)課程中學(xué)習(xí)到的軟件開發(fā)生命周期的相關(guān)內(nèi)容,進(jìn)一步明確本書的學(xué)習(xí)目標(biāo)。
技能1.電子書城總體設(shè)計(jì)
2.系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
3.系統(tǒng)基本框架4.各功能模塊的設(shè)計(jì)與實(shí)現(xiàn)
5.部署和發(fā)布系統(tǒng)
主要內(nèi)容
網(wǎng)上書店也是JSP技術(shù)在電子商務(wù)上的應(yīng)用,用戶可以通過瀏覽器訪問系統(tǒng)、訂購圖書,對系統(tǒng)的管理也是通過瀏覽器來完成的。1、系統(tǒng)功能及模塊用戶注冊:用戶在網(wǎng)上書店訂購圖書前,必須注冊用戶。 網(wǎng)上購物:注冊用戶可以查看書店中有哪些圖書,并確定訂購哪些圖書,可以反復(fù)訂購。查看以前用戶訂單:注冊用戶登錄系統(tǒng)后,可以查看、修改用戶信息,也可以查看以前在網(wǎng)上書店訂購的圖書。1、網(wǎng)上書店總體設(shè)計(jì)系統(tǒng)管理與維護(hù):這是系統(tǒng)管理員的工作,要求能夠添加、修改、刪除圖書等。系統(tǒng)功能模塊如下圖所示:
系統(tǒng)功能模塊1、網(wǎng)上書店總體設(shè)計(jì)2、系統(tǒng)實(shí)現(xiàn)方案
本系統(tǒng)采用B/S(瀏覽器/服務(wù)器)數(shù)據(jù)庫應(yīng)用體系結(jié)構(gòu)。整個系統(tǒng)采用JSP+JavaBean模式,其中,JavaBean主要用來封裝連接數(shù)據(jù)庫、執(zhí)行SQL語句等功能。 JSP容器(服務(wù)器)則采用Tomcat5.0。后臺數(shù)據(jù)庫管理系統(tǒng)則采用SQLServer2000。1、網(wǎng)上書店總體設(shè)計(jì)1、數(shù)據(jù)表分析
分析功能要求,本系統(tǒng)后臺數(shù)據(jù)庫設(shè)計(jì)4個表。2、系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)2、系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
接下來創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表。數(shù)據(jù)庫名為bookshop。
2、系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)網(wǎng)上書店的基本結(jié)構(gòu)如下所示:
系統(tǒng)基本結(jié)構(gòu)圖3、系統(tǒng)基本框架系統(tǒng)程序目目錄結(jié)構(gòu)圖圖3、系統(tǒng)基基本框架1、公共模模塊設(shè)計(jì)公共模塊中中一共有4個JSP文件和一一個CSS文件:““common.jsp”、、“check.jsp”、、“header.jsp””、“footer.jsp”和“style.css”。其中中,“style.css””文件與第第10章中中相同文件件類似,不不作介紹,,下面介紹紹其他4個個文件。common.jsp“common.jsp”文文件包含其其他JSP文件中需需要導(dǎo)入的的Java類和包以以及系統(tǒng)各各頁面要使使用的日期期。4、各功能能模塊的設(shè)設(shè)計(jì)與實(shí)現(xiàn)現(xiàn)程序除了將將常用的Java包和類包含含進(jìn)來外,,還將自定定義包bookshop包含進(jìn)來,,這個包中中有3個JavaBean程序:DBConnectionManager、DBSQLManager和Book,后面將會會詳細(xì)介紹紹這3個JavaBean程序。值得注意的的是,程序序定義了兩兩個String類型變量::dateString和_dateString,前者是表表示當(dāng)前系系統(tǒng)日期,,后者表示示當(dāng)前系統(tǒng)統(tǒng)日期時間間,這兩個個變量將在在網(wǎng)上書店店的其他JSP文件中使用用。check.jsp用來判斷系系統(tǒng)用戶是是否登錄,,防止非法法用戶登錄錄到系統(tǒng)對對系統(tǒng)進(jìn)行行破壞4、各功能能模塊的設(shè)設(shè)計(jì)與實(shí)現(xiàn)現(xiàn)代碼如下::<%if((String)session.getValue("Enter")!="true"){Stringerrmsg="error2";response.sendRedirect("login.jsp?errmsg="+errmsg);}%>header.jsp和和footer.jsp為了了使使網(wǎng)網(wǎng)上上書書店店的的所所有有頁頁面面具具有有統(tǒng)統(tǒng)一一的的風(fēng)風(fēng)格格,,把把頁頁面面頭頭和和尾尾的的代代碼碼分分開開,,分分別別放放在在單單獨(dú)獨(dú)的的JSP文文件件中中。。4、、各各功功能能模模塊塊的的設(shè)設(shè)計(jì)計(jì)與與實(shí)實(shí)現(xiàn)現(xiàn)在其其他他頁頁面面中中使使用用時時,,利利用用include指指令令將將它它們們包包含含進(jìn)進(jìn)來來即即可可。。這這是是開開發(fā)發(fā)一一個個大大型型、、實(shí)實(shí)用用的的Web應(yīng)應(yīng)用用常常用用的的方方法法,,可可以以簡簡化化頁頁面面的的重重復(fù)復(fù)代代碼碼,,也也為為以以后后的的管管理理和和維維護(hù)護(hù)工工作作提提供供了了方方便便。。header.jsp和和footer.jsp就就是是這這樣樣的的兩兩個個文文件件。。如果果其其他他JSP文文件件要要使使用用它它們們,,可可利利用用如如下下語語句句將將它它們們包包含含進(jìn)進(jìn)來來::<%@includefile="incoming/header.jsp"%><%@includefile="incoming/footer.jsp"%>4、、各各功功能能模模塊塊的的設(shè)設(shè)計(jì)計(jì)與與實(shí)實(shí)現(xiàn)現(xiàn)2、網(wǎng)網(wǎng)上上書書店店主主界界面面用戶戶打打開開網(wǎng)網(wǎng)上上書書店店首首先先見見到到的的頁頁面面,,通通過過該該頁頁面面,,用用戶戶可可以以注注冊冊用用戶戶、、登登錄錄系系統(tǒng)統(tǒng)、、查查看看最最新新消消息息,,系系統(tǒng)統(tǒng)管管理理員員也也可可以以通通過過主主頁頁面面進(jìn)進(jìn)入入到到后后臺臺管管理理系系統(tǒng)統(tǒng)。。主界界面面4、、各各功功能能模模塊塊的的設(shè)設(shè)計(jì)計(jì)與與實(shí)實(shí)現(xiàn)現(xiàn)3、、建建立立與與數(shù)數(shù)據(jù)據(jù)庫庫相相關(guān)關(guān)的的JavaBean在上上個個實(shí)實(shí)例例中中,,使使用用一一個個單單獨(dú)獨(dú)的的JSP文文件件““connectdb.jsp””來來連連接接數(shù)數(shù)據(jù)據(jù)庫庫。。由由于于連連接接數(shù)數(shù)據(jù)據(jù)庫庫的的操操作作在在JSP程程序序中中用用得得較較多多,,并并且且是是一一項(xiàng)項(xiàng)很很消消耗耗系系統(tǒng)統(tǒng)資資源源的的操操作作,,所所以以本本章章實(shí)實(shí)例例把把這這個個操操作作寫寫成成JavaBean。。DBConnectionManager.java需要要注注意意如如下下幾幾點(diǎn)點(diǎn)::程序序定定義義了了驅(qū)驅(qū)動動類類型型名名稱稱變變量量driverName和連連接接字字符符串串變變量量url,并并給給它它們們賦賦初初值值,,表表示示當(dāng)當(dāng)前前連連接接數(shù)數(shù)據(jù)據(jù)庫庫bookshop。getConnection()方法法用用于于獲獲得得數(shù)數(shù)據(jù)據(jù)庫庫連連接接實(shí)實(shí)例例。。4、、各各功功能能模模塊塊的的設(shè)設(shè)計(jì)計(jì)與與實(shí)實(shí)現(xiàn)現(xiàn)程序序的的包包名名為為bookshop,其其他他JavaBean類的的包包名名也也是是bookshop。使用用如如下下命命令令編編譯譯程程序序::javacDBConnectionManager.java得到到類類文文件件DBConnectionManager.class除了了連連接接數(shù)數(shù)據(jù)據(jù)庫庫操操作作外外,,在在程程序序中中經(jīng)經(jīng)常常會會執(zhí)執(zhí)行行指指定定的的SQL語句句,,所所以以也也可可以以將將這這個個操操作作編編寫寫為為JavaBean。編寫寫JavaBean程序序DBSQLManager.java,說說明明如如下下::4、、各各功功能能模模塊塊的的設(shè)設(shè)計(jì)計(jì)與與實(shí)實(shí)現(xiàn)現(xiàn)程序序中中要要使使用用類類DBConnectionManager,所所以以要要將將其其包包含含進(jìn)進(jìn)來來。。直直接接寫寫如如下下語語句句::importbookshop.*;在構(gòu)造方方法中,,聲明了了一個DBConnectionManager對象,用用來建立立與數(shù)據(jù)據(jù)庫bookshop的連接,,并生成成Statement對象。方法executeQuery()用來執(zhí)行行SQL查詢語句句,返回回的ResultSet對象,并并賦值給給成員rs。方法executeUpdate()用來執(zhí)行行INSERT、DELETE和UPDATE語句。在編譯DBSQLManager.java時,要將將DBConnectionManager.class文件放置置在DBSQLManager.java所在目錄錄的子目目錄booshop下。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)4、【用戶注冊冊】模塊用戶在網(wǎng)網(wǎng)上書店店訂購圖圖書前,,需要注注冊用戶戶。用戶戶注冊系系統(tǒng)共有有兩個JSP文件:““register.jsp”和“adduser.jsp”register.jsp定義一個個表單以以及相關(guān)關(guān)輸入框框,用于于用戶輸輸入注冊冊信息。。填寫完完畢,用用戶單擊擊【注冊】按鈕,程程序會檢檢驗(yàn)用戶戶名和密密碼的位位數(shù)是否否符合要要求以及及兩次輸輸入的密密碼是否否一致。。adduser.jsp提交表單單后,進(jìn)進(jìn)入“adduser.jsp”頁面,將將用戶信信息存入入數(shù)據(jù)庫庫。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)5、網(wǎng)上上購書子子系統(tǒng)session對象的的作用是是記錄每每個客戶戶端的訪訪問狀態(tài)態(tài),以便便跟蹤每每個客戶戶端的操操作狀態(tài)態(tài)。在網(wǎng)網(wǎng)上購書書子系統(tǒng)統(tǒng)中,使使用session對對象可以以跟蹤用用戶購書書操作,,本實(shí)例例中要充充分利用用session對象象。booklist.jsp用來列出出網(wǎng)上書書店的所所有書籍籍供用戶戶購買。。bookdetail.jsp該頁面中中顯示了了書的詳詳細(xì)信息息,用戶戶還可以以設(shè)置要要購買多多少本書書。Book.java4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)booklist.jsp用來列出出網(wǎng)上書書店的所所有書籍籍供用戶戶購買。。該頁面運(yùn)運(yùn)行界面面如下:4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)bookdetail.jsp該頁面中中顯示了了書的詳詳細(xì)信息息,用戶戶還可以以設(shè)置要要購買多多少本書書。該頁頁面運(yùn)行行界面如如下:4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)buybook.jsp用于接受受“bookdetail.jsp”文件傳過過來的購購書信息息,并添添加到購購物車中中。值得得注意以以下幾點(diǎn)點(diǎn):基于session實(shí)現(xiàn)購物物車。由于用戶戶可以訂訂購多本本圖書,,反復(fù)訂訂購,所所以選擇擇了Vector(向量類類)作為為購物車車session變量的類類型。由于購物物車中,,用戶購購買書的的種類不不是惟一一的,而而是不確確定的,,所以采采取了Vector類,而不不是數(shù)組組。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)Vector(向量類類)是java.util包(java中各種常常用工具具類的類類庫)提提供的一一個工具具類。它它類似于于數(shù)組,,但是具具有比數(shù)數(shù)組更強(qiáng)強(qiáng)大的功功能。Vector類對象所所表達(dá)的的序列中中元素的的個數(shù)是是可變的的,可以以說,Vector類實(shí)現(xiàn)了了變長數(shù)數(shù)組,隨隨著更多多元素加加入其中中,數(shù)組組變得更更大。在在刪除一一些元素素之后,,數(shù)組變變小。Vector類的對象象不但可可以保存存一序列列的數(shù)據(jù)據(jù),而且且還封裝裝了一些些有用的的方法來來操作和和處理這這些數(shù)據(jù)據(jù),如addElement()、insertElementAt()、elementAt()、setElementAt()、removeElement()、removeAllElements()等。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)shopcar.jsp作用是顯顯示購物物車中的的內(nèi)容,,實(shí)際上上它只是是從session中取出購購物車變變量shopcar,如果購購物車為為空,頁頁面就顯顯示購物物車為空空的信息息。如果果購物車車不為空空,它就就取出用用戶訂購購的所有有書籍,,依次顯顯示在頁頁面上。。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)checkout.jsp作用是將將訂單寫寫入到數(shù)數(shù)據(jù)庫中中。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)查看【我的訂單單】(myshop.jsp)購買圖書書后,用用戶隨時時可以查查看以前前的所有有訂單,,單擊頁頁面頭【我的訂單單】,就可以以打開““myshop.jsp”頁面。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)orderitem.jsp如果用戶戶單擊““查看””按鈕,,可以進(jìn)進(jìn)入“orderitem.jsp”頁頁面,查查看每個個訂單的的各圖書書信息以以及購買買數(shù)量。。4、各功功能模塊塊的設(shè)計(jì)計(jì)與實(shí)現(xiàn)現(xiàn)將各JSP文件件、JDBC驅(qū)驅(qū)動程序序jar文件等等按照““系統(tǒng)程程序目錄錄圖”組組織本系系統(tǒng)程序序目錄。。然后將將其拷貝貝到Tomcat服務(wù)務(wù)器的Webapps目錄下下,再啟啟動Tomcat服務(wù)務(wù)器。打開瀏瀏覽器器,在在地址址欄中中輸入入:http://localhost:8080/bookshop/index.jsp就會打打開網(wǎng)網(wǎng)上書書店主主頁,,進(jìn)行行相應(yīng)應(yīng)操作作。5、部部署和和發(fā)布布系統(tǒng)統(tǒng)本課小小結(jié)理解電電子書書城的的基本本設(shè)計(jì)計(jì)思想想系統(tǒng)數(shù)數(shù)據(jù)庫庫設(shè)計(jì)計(jì)數(shù)據(jù)庫庫封裝裝成Bean課外拓拓展根據(jù)您您對所所在城城市的的新華華書店店的業(yè)業(yè)務(wù)處處理流流程的的了解解和分析析,參參照電電子書書城,,設(shè)計(jì)計(jì)出電電子書書城網(wǎng)網(wǎng)站的的數(shù)據(jù)據(jù)庫(bookshop)。9、靜夜四四無鄰,,荒居舊舊業(yè)貧。。。2023/1/42023/1/4Wednesday,January4,202310、雨中中黃葉葉樹,,燈下下白頭頭人。。。2023/1/42023/1/42023/1/41/4/20238:53:40PM11、以我獨(dú)獨(dú)沈久,,愧君相相見頻。。。2023/1/42023/1/42023/1/4Jan-2304-Jan-2312、故人江海別別,幾度隔山山川。。2023/1/42023/1/42023/1/4Wednesday,January4,202313、乍見翻疑疑夢,相悲悲各問年。。。2023/1/42023/1/42023/1/42023/1/41/4/202314、他他鄉(xiāng)鄉(xiāng)生生白白發(fā)發(fā),,舊舊國國見見青青山山。。。。04一一月月20232023/1/42023/1/42023/1/415、比不不了得得就不不比,,得不不到的的就不不要。。。。。一月232023/1/42023/1/42023/1/41/4/202316、行動出成成果,工作作出財(cái)富。。。2023/1/42023/1/404January202317、做前,能夠夠環(huán)視四周;;做時,你只只能或者最好好沿著以腳為為起點(diǎn)的射線線向前。。2023/1/42023/1/42023/1/42023/1/49、沒沒有有失失敗敗,,只只有有暫暫時時停停止止成成功功??!。。2023/1/42023/1/4Wednesday,January4,202310、很多事事情努力力了未必必有結(jié)果果,但是是不努力力卻什么么改變也也沒有。。。2023/1/42023/1/42023/1/41/4/20238:53:40PM11、成功就是是日復(fù)一日日那一點(diǎn)點(diǎn)點(diǎn)小小努力力的積累。。。2023/1/42023/1/42023/1/4Jan-2304-Jan-2312、世間成事,,不求其絕對對圓滿,留一一份不足,可可得無限完美美。。2023/1/42023/1/42023/1/4Wednesday,January4,202313、不不知知香香積積寺寺,,數(shù)數(shù)里里入入云云峰峰。。。。2023/1/42023/1/42023/1/42023/1/41/4/202314、意志志堅(jiān)強(qiáng)強(qiáng)的人人能把把世界界放在在手中中像泥泥塊一一樣任任意揉揉捏。。04一一月月20232023/1/42023/1/42023/1/415、楚塞三湘湘接,荊門門九派通。。。。一月232023/1/42023/1/42023/1/41/4/202316、少年十十五二十十時,步步行奪得得胡馬騎騎。。2023/1/42023/1/404January202317、空山新雨后后,天氣晚來來秋。。2023/1/4
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 八年級語文上冊名篇名句默寫
- 最棒的我語言活動
- 建筑給排水施工質(zhì)量控制措施
- 石河子大學(xué)《數(shù)據(jù)庫系統(tǒng)原理與應(yīng)用》2022-2023學(xué)年期末試卷
- 石河子大學(xué)《工程材料》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《數(shù)據(jù)庫原理與應(yīng)用》2023-2024學(xué)年期末試卷
- 民航服務(wù)禮儀學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 精讀《未來簡史》學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 沈陽理工大學(xué)《化工原理Z》2022-2023學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《電路實(shí)驗(yàn)》2022-2023學(xué)年期末試卷
- 眼科學(xué)基礎(chǔ)病例分析
- 混合痔中醫(yī)護(hù)理 方案
- 美國刑法制度
- 慢性病防治和健康生活知識講座
- 2024年教師招聘考試-中小學(xué)校長招聘筆試參考題庫含答案
- 中華民族共同體概論課件第十六講文明新路與人類命運(yùn)共同體
- 人教部編版一年級道德與法治上冊第10課《吃飯有講究》精美課件
- 2024-2030全球與中國鉑銅合金市場現(xiàn)狀及未來發(fā)展趨勢
- 移風(fēng)易俗鄉(xiāng)風(fēng)文明工作現(xiàn)場推進(jìn)會上的發(fā)言范文
- 供電企業(yè)輿情的預(yù)防及處置
- (高清版)WST 433-2023 靜脈治療護(hù)理技術(shù)操作標(biāo)準(zhǔn)
評論
0/150
提交評論