歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

基于Java Web SSH框架的網(wǎng)上書店

  • 資源ID:29005669       資源大?。?span id="t7n0e00" class="font-tahoma">2.02MB        全文頁數(shù):54頁
  • 資源格式: DOC        下載積分:15積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要15積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號:
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

基于Java Web SSH框架的網(wǎng)上書店

X X 科 技 大 學(xué)畢 業(yè) 設(shè) 計(jì)( 論 文 )題目基于Java Web SSH框架的網(wǎng)上書店作者 學(xué)院 專業(yè) 學(xué)號 指導(dǎo)教師 2013 年 月 日X X 科 技 大 學(xué)畢業(yè)設(shè)計(jì)(論文)任務(wù)書 學(xué)院 系(教研室)系(教研室)主任: (簽名) 年 月 日學(xué)生姓名: 學(xué)號: 專業(yè): 1 設(shè)計(jì)(論文)題目及專題: 基于Java Web SSH框架的網(wǎng)上書店 2 學(xué)生設(shè)計(jì)(論文)時間:自 2013 年 月 日開始至 2013 年 月 日止3 設(shè)計(jì)(論文)所用資源和參考資料:1 徐建波 編著 Java Web 應(yīng)用開發(fā)原理與技術(shù)M. 國防科技大學(xué)出版社2 (美) Y.Daniel Liang 編著 Java 語言程序設(shè)計(jì)進(jìn)階篇M. 機(jī)械工業(yè)出版社 3 戎偉 猛劼 蘇微 編著 解密J2EE 項(xiàng)目開發(fā)的70個問題4 (美) Roger S.Pressman 編著 軟件工程4 設(shè)計(jì)(論文)應(yīng)完成的主要內(nèi)容:基于Java Web 三大框架(SSH)技術(shù)開發(fā)的網(wǎng)上書店,包括前臺展示和后臺管理兩個部分;其中前臺展示包括登陸模塊、注冊模塊、首頁展示、圖書展示、圖書購買、產(chǎn)生訂單;后臺管理包括廣告管理模塊、用戶管理模塊、圖書管理模塊、訂單管理模塊。 5 提交設(shè)計(jì)(論文)形式(設(shè)計(jì)說明與圖紙或論文等)及要求:(1)論文思路清晰,條理清楚,中心突出,內(nèi)容充實(shí),論據(jù)充分,結(jié)構(gòu)緊湊,層次分明,圖表清晰,格式規(guī)范,結(jié)論正確;按湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)要求與規(guī)范編排、打印文稿;(2)上交論文(紙質(zhì))打印文稿和系統(tǒng)源碼(電子版);6 發(fā)題時間: 年 月 日指導(dǎo)教師: (簽名)學(xué) 生: (簽名)X X 科 技 大 學(xué)畢業(yè)設(shè)計(jì)(論文)指導(dǎo)人評語 主要對學(xué)生畢業(yè)設(shè)計(jì)(論文)的工作態(tài)度,研究內(nèi)容與方法,工作量,文獻(xiàn)應(yīng)用,創(chuàng)新性,實(shí)用性,科學(xué)性,文本(圖紙)規(guī)范程度,存在的不足等進(jìn)行綜合評價指導(dǎo)人: (簽名)年 月 日 指導(dǎo)人評定成績: X X 科 技 大 學(xué)畢業(yè)設(shè)計(jì)(論文)評閱人評語 主要對學(xué)生畢業(yè)設(shè)計(jì)(論文)的文本格式、圖紙規(guī)范程度,工作量,研究內(nèi)容與方法,實(shí)用性與科學(xué)性,結(jié)論和存在的不足等進(jìn)行綜合評價評閱人: (簽名)年 月 日 評閱人評定成績: X X 科 技 大 學(xué)畢業(yè)設(shè)計(jì)(論文)答辯記錄日期: 學(xué)生: 學(xué)號: 班級: 題目: 提交畢業(yè)設(shè)計(jì)(論文)答辯委員會下列材料:1 設(shè)計(jì)(論文)說明書共頁2 設(shè)計(jì)(論文)圖 紙共頁3 指導(dǎo)人、評閱人評語共頁畢業(yè)設(shè)計(jì)(論文)答辯委員會評語: 主要對學(xué)生畢業(yè)設(shè)計(jì)(論文)的研究思路,設(shè)計(jì)(論文)質(zhì)量,文本圖紙規(guī)范程度和對設(shè)計(jì)(論文)的介紹,回答問題情況等進(jìn)行綜合評價答辯委員會主任: (簽名)委員: (簽名)(簽名)(簽名)(簽名) 答辯成績: 總評成績: 湖南科技大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)摘 要趕快寫英文摘要,明天寫完發(fā)給我改隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)上購物越來越流行,而網(wǎng)上書店更是逐漸受到越來越多的人關(guān)注,不用涉及交通、不用到書店翻閱、即可看到全國各地的書籍價格、更加全面地搜索自己喜歡的書籍、需要的書籍。通過網(wǎng)絡(luò)銷售系統(tǒng)的平臺,商家將擁有更大的市場,能更加及時快速地得到用戶對于商品的反響,可以隨時調(diào)整銷售策略,提高商家的市場競爭力。對于消費(fèi)者也提供了方便,消費(fèi)者可以不受時間和地域的限制進(jìn)行購物,并且可以獲取更多信息.。本文闡述了如何構(gòu)建基于B/S 架構(gòu),以O(shè)racle數(shù)據(jù)庫為基礎(chǔ),應(yīng)用Java Web SSH框架的網(wǎng)上書店,系統(tǒng)主要完成以下基本的功能:主要是前臺展示和后臺管理兩個部分;其中前臺展示包括登陸模塊、注冊模塊、首頁展示、圖書展示、圖書購買、產(chǎn)生訂單;后臺管理包括廣告管理模塊、用戶管理模塊、圖書管理模塊、訂單管理模塊。本次課題主要采用java語言作為程序的開發(fā)語言,采用Oracle數(shù)據(jù)庫作為數(shù)據(jù)庫,MyEclipse6.5作為開發(fā)工作,運(yùn)用PowerDesigner作為數(shù)據(jù)庫建模工具,運(yùn)用的知識還有JavaScript ,CSS, HTML 等知識。這兩段修改如下:本文闡述了如何構(gòu)建基于B/S 架構(gòu),以O(shè)racle數(shù)據(jù)庫為基礎(chǔ),應(yīng)用Java Web SSH框架的網(wǎng)上書店,系統(tǒng)主要完成以下基本功能:前臺包括注冊與登陸、圖書展示、圖書購買、訂單產(chǎn)生;后臺管理包括廣告管理、用戶管理、圖書管理、訂單管理。本次課題設(shè)計(jì)采用的開發(fā)語言是java,數(shù)據(jù)庫是Oracle,開發(fā)工具是MyEclipse6.5,數(shù)據(jù)庫建模工具是PowerDesigner,此外還運(yùn)用了JavaScript ,CSS, HTML 等知識。關(guān)鍵字:SSH框架;java;網(wǎng)上書店;B/S 架構(gòu);目 錄第一章 引言- 1 -1.1 項(xiàng)目背景- 1 -1.2 項(xiàng)目目的- 1 -1.3 主要內(nèi)容- 2 -第二章 系統(tǒng)理論和技術(shù)- 3 -2.1 MyEclipse 的簡介- 3 -2.2 SSH框架的簡介- 3 -2.3 B/S架構(gòu)的簡介- 5 -2.3 Java簡介- 5 -2.4 Java Web工程的基本介紹- 6 -2.2.1 建立Web工程的基本步驟- 6 -2.2.2 Java Web 工程目錄結(jié)構(gòu)- 6 -2.3 Oracle數(shù)據(jù)庫- 6 -2.3.1 Oracle 數(shù)據(jù)庫簡介- 6 -2.3.2 Oracle數(shù)據(jù)庫的特點(diǎn)- 6 -第三章 系統(tǒng)需求分析與設(shè)計(jì)- 8 -3.1 可行性分析- 8 -3.2 功能需求分析- 8 -3.3 系統(tǒng)用例模型- 11 -3.3.1 普通用戶用例圖- 11 -3.3.2 管理員用例圖- 11 -3.4 系統(tǒng)體系結(jié)構(gòu)- 12 -3.5 數(shù)據(jù)庫設(shè)計(jì)- 13 -3.3.1 數(shù)據(jù)庫表E-R圖- 14 -3.3.2 數(shù)據(jù)庫表分析- 14 -第四章 系統(tǒng)實(shí)現(xiàn)- 16 -4.1 搭建開發(fā)環(huán)境- 16 -4.1.1 安裝開發(fā)工具- 16 -4.1.2 開發(fā)軟件的配置- 16 -4.1.3 建立web工程搭建開發(fā)框架- 17 -4.2 數(shù)據(jù)庫實(shí)現(xiàn)- 17 -4.2.1 數(shù)據(jù)庫表字段設(shè)計(jì)- 17 -4.2.2 數(shù)據(jù)庫連接實(shí)現(xiàn)- 20 -4.3 前臺主要功能模塊- 21 -4.3.1 登陸功能的實(shí)現(xiàn)- 21 -4.3.2 注冊功能的實(shí)現(xiàn)- 23 -4.3.3 首頁功能實(shí)現(xiàn)- 25 -4.3.4 圖書瀏覽功能- 27 -4.3.5 訂單功能- 28 -4.3.6 購物車功能- 30 -4.10 后臺管理功能- 34 -4.10.1 后臺管理功能流程- 34 -4.10.2 用戶管理- 35 -4.10.3 廣告管理- 37 -4.10.4 圖書管理- 38 -第五章 總結(jié)與問題分析- 41 -5.1 系統(tǒng)問題分析總結(jié)- 41 -5.2 開發(fā)過程中常見問題分析- 41 -第六章 總結(jié)- 44 -參 考 文 獻(xiàn)- 45 -致 謝- 46 - ii - 第一章 引言 1.1 項(xiàng)目背景 隨著網(wǎng)絡(luò)技術(shù)的迅猛發(fā)展,越來越多的人熱衷于上網(wǎng)。隨著用戶的不斷增加,其規(guī)模迅速擴(kuò)大,它的領(lǐng)域也走向多元化。除了原先的科學(xué)技術(shù)和教育外,Internet已進(jìn)入了文化、經(jīng)濟(jì)、政治、新聞、體育、娛樂、商業(yè)和服務(wù)業(yè)。可以預(yù)見Internet將成為我們構(gòu)筑未來嶄新的生活方式。10電子商務(wù)就是在這樣一個背景下產(chǎn)生和發(fā)展起來的。伴隨著電子商務(wù)技術(shù)的不斷成熟,電子商務(wù)的功能也越來越強(qiáng)大。書城交易網(wǎng)站就是Internet和電子商務(wù)發(fā)展的產(chǎn)物,近幾年在我國發(fā)展迅猛,如同一些書店紛紛在各地開設(shè)分店以拉近書店與顧客間距離一樣。隨著科學(xué)技術(shù)的飛速發(fā)展,Internet已經(jīng)成了普通百姓都可以初級的大中型媒體傳播手段。隨著現(xiàn)今全民素質(zhì)和科學(xué)技術(shù)水平的不斷提高,知識更新的越來越快。人們隨時都會有被淘汰的危機(jī),為了不讓社會淘汰,做到與時俱進(jìn)就必須多讀書不斷學(xué)習(xí)。21世紀(jì)是網(wǎng)絡(luò)的時代、信息的時代,時間是非常的寶貴的。人們由于種種原因沒有時間到書店去,也不知道哪家書店有自己需要的書籍,同時那些傳統(tǒng)書店的經(jīng)營者又沒什么好的方法讓人們知道我這就有顧客需要的書籍,這種買賣雙方之間交流上的阻礙成為“網(wǎng)上書店”網(wǎng)站發(fā)展的原動力。網(wǎng)上書店的出現(xiàn)可以更好地解決這方面的問題。11網(wǎng)上書店在價格、時效性、品種、查詢方式等方面都有優(yōu)勢。網(wǎng)上書店是一種直銷方式,速度和價格上都有優(yōu)勢,在價格上一般網(wǎng)上書店都有7.5-9折的折扣,如果是特價書折扣就更多了,網(wǎng)上書店的書目數(shù)據(jù)是任何訂購書目都無法比擬的,亞馬遜網(wǎng)上書店有300多萬種圖書,另外還有音樂系列產(chǎn)品和其它教育產(chǎn)品,剛剛成立的北京圖書大廈網(wǎng)上書店也有16萬種書目數(shù)據(jù),“中國尋書網(wǎng)”目前也有50萬種書籍,年度將突破100萬種圖書,網(wǎng)上書店的書目除書名,著者,價格等信息外,還有封面,內(nèi)容簡介,目次,評論等詳細(xì)信息。同時網(wǎng)上書店的目錄查詢功能也是傳統(tǒng)的按某種分類規(guī)則編排的圖書征訂目錄無法比擬的,其以關(guān)鍵詞或主題從網(wǎng)上檢索某類文獻(xiàn),查準(zhǔn)率與查全率都有一定的保障。另外還有一些書更是以網(wǎng)站包銷或總代理的形式進(jìn)行銷售,這就意味著一種全新的電子商務(wù)模式的開始。101.2 項(xiàng)目目的隨著網(wǎng)絡(luò)信息技術(shù)的高速發(fā)展,電子商務(wù)迅速發(fā)展。網(wǎng)上購物越來越流行。注冊用戶可以在網(wǎng)上搜索購買到自己想要的各種商品,讓人們體會到了足不出戶,便可隨意購物的快感。而書籍作為一種文化的載體、智慧的結(jié)晶,一直是人們生活中必需的物品。由于書籍本身不像其他商品一樣,存在多種必需當(dāng)面檢查質(zhì)量。因此網(wǎng)上書店是發(fā)展的最迅速的。網(wǎng)上書店在價格、時效性、品種、查詢方式等方面都有優(yōu)勢。因此開發(fā)一個網(wǎng)上書店是很有必要的。隨著Java Web技術(shù)的發(fā)展,Java 語言尤其擅長B/S機(jī)構(gòu)的系統(tǒng)開發(fā)。本次課題采用J2EE SSH框架 集合JSP、JavaScript、CSS、HTML等知識聯(lián)合設(shè)計(jì)。主要的目的是:針對目前較流行的框架技術(shù)進(jìn)行一定的了解和熟悉。體會框架開發(fā)Web應(yīng)用程序的好處。掌握Struts框架實(shí)現(xiàn)MVC模式結(jié)構(gòu)清晰,開發(fā)者只關(guān)注業(yè)務(wù)邏輯的實(shí)現(xiàn)的優(yōu)點(diǎn)。熟悉掌握Hibernate框架對于數(shù)據(jù)庫操作的基本方法和步驟,體會代碼冗余時的復(fù)雜,熟悉hibernate基本編程步驟,了解數(shù)據(jù)庫表和實(shí)體類一一對應(yīng)的基本編程思想。掌握Spring框架的反轉(zhuǎn)控制思想(Inverse Of Control) 和工程設(shè)計(jì)模式。掌握基本的XML 文件的配置,學(xué)會CSS+JS+JSP開發(fā)B/S結(jié)構(gòu)模式的瀏覽器程序。通過本次課題的研究達(dá)到對于現(xiàn)在主流框架技術(shù)有一點(diǎn)的了解,懂得如何開發(fā)B/S架構(gòu)的應(yīng)用程序,對于現(xiàn)在網(wǎng)上書店系統(tǒng)業(yè)務(wù)流程有一點(diǎn)的認(rèn)知。進(jìn)一步推廣網(wǎng)上書店的發(fā)展。1.3 主要內(nèi)容近年來,隨著Internet技術(shù)的迅猛發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)給人們的工作、學(xué)習(xí)和日常生活帶來很大的便利,同時開發(fā)Web的技術(shù)也在不斷更新,框架技術(shù)日趨成熟,特別是B/S架構(gòu)的提出,使得框架技術(shù)在B/S架構(gòu)系統(tǒng)上的優(yōu)勢尤為突出。本課題采用SSH框架結(jié)合Servlet、JavaScript、JSP、XML 等技術(shù),基于B/S結(jié)構(gòu)開發(fā)的網(wǎng)上書店系統(tǒng),主要就是框架技術(shù)的應(yīng)用,掌握如何結(jié)合數(shù)據(jù)庫知識和框架技術(shù)開發(fā)出高效、簡潔、省事的系統(tǒng)。本論文具體章節(jié)安排如下:第一章:引言。介紹課題研究的背景和目的。第二章:系統(tǒng)開發(fā)相關(guān)的概念和理論以及技術(shù)。第三章:系統(tǒng)分析和設(shè)計(jì)。第四章:系統(tǒng)的實(shí)現(xiàn)。該部分是該課題的核心部分,包括開發(fā)運(yùn)行環(huán)境構(gòu)建,數(shù)據(jù)庫實(shí)現(xiàn)以及根據(jù)需求分析和技術(shù)分析來實(shí)現(xiàn)系統(tǒng)的各個模塊功能,使系統(tǒng)能夠正常運(yùn)行,包括開發(fā)過程中遇到的問題記載和分析。第五章:總結(jié)與問題分析。對本課題的重點(diǎn)難點(diǎn)做一個分析,提出對本系統(tǒng)需要改進(jìn)與加強(qiáng)的地方。第六章:結(jié)束語。對本次課題研究的感想以及學(xué)到的知識和開發(fā)經(jīng)驗(yàn)的一個總結(jié)和對后期開發(fā)的一個展望。- 2 -第二章 系統(tǒng)理論和技術(shù)2.1 MyEclipse 的簡介MyEclipse企業(yè)級工作平臺(MyEclipse Enterprise Workbench ,簡稱MyEclipse)是對EclipseIDE的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測試和發(fā)布功能,完整支持HTML,Struts,JSP,CSS,JavaScript,Spring,SQL,Hibernate。MyEclipse 是一個十分優(yōu)秀的用于開發(fā)Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常強(qiáng)大,支持也十分廣泛,尤其是對各種開源產(chǎn)品的支持十分不錯。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC數(shù)據(jù)庫鏈接工具等多項(xiàng)功能??梢哉fMyEclipse幾乎囊括了目前所有主流開源產(chǎn)品的專屬eclipse開發(fā)工具。12.2 SSH框架的簡介SSH框架是指Struts 框架、Spring框架和Hibernate 框架的集成。是目前較為流行的一種Web應(yīng)用程序開源框架。集成SSH框架的系統(tǒng)從職責(zé)上分為四層:表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)持久層和域模塊層,以幫助開發(fā)人員在短期內(nèi)搭建結(jié)構(gòu)清晰、可復(fù)用性好、維護(hù)方便的Web應(yīng)用程序。其中使用Struts作為系統(tǒng)的整體基礎(chǔ)架構(gòu),負(fù)責(zé)MVC的分離,在Struts框架的模型部分,控制業(yè)務(wù)跳轉(zhuǎn),利用Hibernate框架對持久層提供支持,Spring做管理,管理struts和hibernate。具體做法是:用面向?qū)ο蟮姆治龇椒ǜ鶕?jù)需求提出一些模型,將這些模型實(shí)現(xiàn)為基本的Java對象,然后編寫基本的DAO(Data Access Objects)接口,并給出Hibernate的DAO實(shí)現(xiàn),采用Hibernate架構(gòu)實(shí)現(xiàn)的DAO類來實(shí)現(xiàn)Java類與數(shù)據(jù)庫之間的轉(zhuǎn)換和訪問,最后由Spring做管理,管理Struts和Hibernate。Struts 框架:Struts 是一個基于Sun J2EE平臺的MVC框架,主要是采用Servlet和JSP技術(shù)來實(shí)現(xiàn)的。Struts的MVC設(shè)計(jì)模式使我們的邏輯變得很清晰。Struts 對Model,View和Controller 都提供了對應(yīng)的組件。ActionServlet,這個類是Struts的核心控制器,負(fù)責(zé)攔截來自用戶的請求。Action 這個類通常由用戶提供,該控制器負(fù)責(zé)接收來自ActionServlet的請求,并根據(jù)該請求調(diào)用模型的業(yè)務(wù)邏輯方法處理請求,并將處理結(jié)果返回給JSP頁面顯示。所以Struts是Web框架技術(shù)的基礎(chǔ)控制頁面的跳轉(zhuǎn)。Struts 框架流程圖:圖2.1 struts 框架流程圖Spring 框架:Spring是一個開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。Spring 的反轉(zhuǎn)控制(IOC)和面向切面編程(AOP)思想使我們的軟件最大限度上解耦。Spring 的作用貫穿了整個中間層,將Web層、Service層、DAO層及PO無縫整合,其數(shù)據(jù)服務(wù)層用來存放數(shù)據(jù)。Spring在使用IOC容器作為構(gòu)建所有架構(gòu)層的完整解決方案方面是獨(dú)一無二的。Spring提供了唯一的數(shù)據(jù)訪問抽象,包括簡單和有效率的JDBC框架,極大的改進(jìn)了效率并且減少了可能的錯誤。Spring的數(shù)據(jù)訪問架構(gòu)還集成了Hibernate和其他O/R mapping解決方案。Spring還提供了唯一的事務(wù)管理抽象,它能夠在各種底層事務(wù)管理技術(shù),例如JTA或者JDBC事務(wù)提供一個一致的編程模型。Spring提供了一個用標(biāo)準(zhǔn)Java語言編寫的AOP框架,它給POJOs提供了聲明式的事務(wù)管理和其他企業(yè)事務(wù)。Hibernate 框架:Hibernate 框架是一個開放源代碼的對象關(guān)系映射框架,它對JDBC進(jìn)行了非常輕量級的對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數(shù)據(jù)庫。是用來解決傳統(tǒng)程序上重復(fù)書寫數(shù)據(jù)庫連接、數(shù)據(jù)庫關(guān)閉操作上的代碼冗余的,提高五個接口來解決傳統(tǒng)的JDBC操作,分別是Configuration 用來讀取配置文件hibernate.cfg.xml 獲取連接所需要的參數(shù)。SessionFactory 工廠方法負(fù)責(zé)初始化Hibernate。它充當(dāng)數(shù)據(jù)存儲源的代理,并負(fù)責(zé)創(chuàng)建Session對象 Session 封裝了基本的增、刪、改、查方法負(fù)責(zé)執(zhí)行被持久化對象的CRUD操作(CRUD的任務(wù)是完成與數(shù)據(jù)庫的交流,包含了很多常見的SQL語句。) Transaction 控制事務(wù)提交和回滾。Query負(fù)責(zé)各種數(shù)據(jù)庫查詢,不僅可以使用SQL語言還提供了HQL查詢語言。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對持久化對象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。2.3 B/S架構(gòu)的簡介改成“2.3 B/S三層架構(gòu)”B/S 架構(gòu)是指:(Browser/Server)瀏覽器/服務(wù)器結(jié)構(gòu)。它是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實(shí)現(xiàn),事務(wù)邏輯的極少部分在前端(Browser)實(shí)現(xiàn),在服務(wù)器端(Server)實(shí)現(xiàn)主要的事務(wù)邏輯,形成所謂三層3-tier結(jié)構(gòu)。相對于C/S結(jié)構(gòu)的“胖”客戶端,使用者需要在電腦上安裝相應(yīng)的客戶端軟件來說,B/S結(jié)構(gòu)是屬于一種“瘦”客戶端,在服務(wù)器端存放大多數(shù)或主要的業(yè)務(wù)邏輯,因此,B/S結(jié)構(gòu)的系統(tǒng)不需要安裝客戶端軟件,它運(yùn)行在客戶端的瀏覽器之上,系統(tǒng)升級或維護(hù)時只需更新服務(wù)器端軟件即可,這樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級的成本和工作量,降低了用戶的總體成本(TCO)。 B/S結(jié)構(gòu)系統(tǒng)的產(chǎn)生為系統(tǒng)面對無限未知用戶提供了可能。11 B/S體系結(jié)構(gòu)圖:圖2.2基于B/S體系結(jié)構(gòu)圖2.3 Java簡介是2.4Java是一種可以撰寫跨平臺應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。是由Sun Microsystems現(xiàn)在稱Oracle公司于1995年5月推出的Java程序設(shè)計(jì)語言和Java平臺(即JavaSE,JavaEE,JavaME)的總稱。Java技術(shù)具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應(yīng)用于個人PC、數(shù)據(jù)中心、游戲控制臺、科學(xué)超級計(jì)算機(jī)、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專用社群。在全球云計(jì)算和移動互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下,Java更具備了顯著優(yōu)勢和廣闊前景4。Java編程語言風(fēng)格十分接近C、C+語言。Java是一個純的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,它繼承了 C+ 語言面向?qū)ο蠹夹g(shù)的核心,Java舍棄了C +語言中容易引起錯誤的指針(以引用取代)、運(yùn)算符重載(operator overloading)、多重繼承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的對象所占據(jù)的內(nèi)存空間,使得程序員不用再為內(nèi)存管理而擔(dān)憂。2.4 Java Web工程的基本介紹 2.2.1 建立Web工程的基本步驟以開放工具M(jìn)yEclipse6.5為例。1. 建立Web工程 單擊File->New->Web Project 在彈出的窗口輸入工程名。2. 在工程子目錄下的WebRootWEB-INFlib 目錄下導(dǎo)入開發(fā)過程中用到的第三方j(luò)ar包。3. 進(jìn)行開發(fā)。相關(guān)的開發(fā)時用到的目錄結(jié)構(gòu)將在下面的篇章中介紹。2.2.2 Java Web 工程目錄結(jié)構(gòu) 1.SRC 該子目錄下存放開發(fā)過程中編寫的java源代碼。在改目錄結(jié)構(gòu)下可以建立自己的包名。entity 一般存放開發(fā)過程中的實(shí)體類 DAO 存放開發(fā)過程中對數(shù)據(jù)庫進(jìn)行操作的類。biz 一般是業(yè)務(wù)邏輯類 action 存放控制頁面請求的action類2.WebRoot 改子目錄下一般有建立Web工程時生成的WEB-INF 文件夾和META-INF 文件夾,該目錄下一般存放JSP頁面和自己的JSP頁面需要用到CSS、JS、以及一些文件和圖片。CSS 通常放在自己在該目錄下建立的CSS的文件夾中JS放置在JS的文件夾中3.WEB-INF 下有l(wèi)ib 目錄 存放開發(fā)工程中用到的第三方j(luò)ar包。web.xml 文件一般配置過濾器 filter 和servlet4.實(shí)體映射文件 xxx.hbm.xml 放置位置隨便 一般存放在對應(yīng)的實(shí)體包類,該文件配置的是實(shí)體類和對應(yīng)的數(shù)據(jù)表之間的映射。5.hibernate.cfg.xml 配置的是與數(shù)據(jù)庫連接相關(guān)的屬性,存放在src下6.struts.xml 配置每個Action的文件,存放在src 下7.beans.xml 配置的是每個javaBean 在框架中 反轉(zhuǎn)控制就是通過這個文件讀取相應(yīng)的屬性值的。本節(jié)刪除或者放到第四章前面2.3 Oracle數(shù)據(jù)庫是2.52.3.1 Oracle 數(shù)據(jù)庫簡介Oracle 數(shù)據(jù)庫是由甲骨文公司開發(fā)的一款重量量級的大型關(guān)系數(shù)據(jù)庫,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)或?yàn)g覽器/服務(wù)器(B/S)體系結(jié)構(gòu)的數(shù)據(jù)庫之一 。2.3.2 Oracle數(shù)據(jù)庫的特點(diǎn)完整的數(shù)據(jù)管理功能:1.數(shù)據(jù)的大量性。Oracle數(shù)據(jù)庫是大型的數(shù)據(jù),相比一般的小型、中型數(shù)據(jù)庫,它能存放大量的數(shù)據(jù),而且操作效率高。這也是Oracle數(shù)據(jù)庫能應(yīng)用于C/S,B/S 架構(gòu)系統(tǒng)的原因。2.數(shù)據(jù)保存的持久性。3.數(shù)據(jù)的共享性4.數(shù)據(jù)的可靠性。分布式處理功能:1.具有靈活的體系結(jié)構(gòu)。2 適應(yīng)分布式管理和控制機(jī)構(gòu),DDBS 的機(jī)構(gòu)符合企業(yè)分布的組織結(jié)構(gòu),允許各個部門對其自身數(shù)據(jù)實(shí)行局部控制,在本地插入、查詢和維護(hù)。3 經(jīng)濟(jì)性能優(yōu)越。4 系統(tǒng)的可靠性高、可用性好。由于數(shù)據(jù)庫分布在多個場地,并有許多復(fù)制數(shù)據(jù),即使在個別場地或個別通信鏈路上發(fā)生障礙,也不會影響到整個系統(tǒng)的崩潰。5 局部應(yīng)用的響應(yīng)速度快。 6 可擴(kuò)展性好。開發(fā)性:全角與SQL Server只能在windows 平臺上運(yùn)行相比,Oracle 能運(yùn)行在所有主流平臺包括Windows(32位和64位)、Linux和不同分支的Unix。第三章 系統(tǒng)需求分析與設(shè)計(jì)3.1 可行性分析本次課題研究是基于java語言,采用較流行的SSH框架,開發(fā)的B/S架構(gòu)的網(wǎng)上書店系統(tǒng)。由于開發(fā)工具和SSH框架都是開源的,所有經(jīng)濟(jì)上是可行的,而該研究課題僅僅是個人畢業(yè)設(shè)計(jì)所用,不存在市場價值,而技術(shù)上SSH框架適合該類B/S結(jié)構(gòu)的系統(tǒng)開發(fā)。因此該課題可以開發(fā)。3.2 功能需求分析 功能需求分析階段是軟件開發(fā)前期必須的階段。該過程是在編碼前,綜合調(diào)查市場需求,客戶要求,經(jīng)濟(jì)效益以及時間和技術(shù)上多方面的因素得出系統(tǒng)該開發(fā)什么功能。需求分析一般分兩個階段,即需求獲取和需求規(guī)格,需求獲取是用自然語言清楚地描述用戶的要求。需求規(guī)格的目的是確定需求的唯一性。需求分析通常是在綜合考慮到影響因素后,確定系統(tǒng)有哪些功能,完成哪些功能。完善的需求往往為后續(xù)軟件開發(fā)代來很多好處,往往通過需求分析可以避免開發(fā)過程中的很多問題。反而可以節(jié)約更多的時間。本研究課題是基于B/S 架構(gòu)下開發(fā)的網(wǎng)上購物系統(tǒng),由于不涉及到商業(yè)性僅僅是自己的一個研究性練習(xí),所有功能大致和大多數(shù)網(wǎng)上購物系統(tǒng)功能一樣。該系統(tǒng)功能分為前臺部分和后臺管理部分。前臺部分包括: 用戶登陸,注冊,退出登陸,首頁圖書展示,圖書瀏覽,廣告展示,商品加入購物車,購物圖書,生成訂單及產(chǎn)生訂單詳細(xì)等功能。后臺管理主要是對一些前臺數(shù)據(jù)的管理包括:用戶管理,廣告管理,圖書管理,訂單管理等功能。其中每個功能模塊包括UI設(shè)計(jì)和功能實(shí)現(xiàn)兩部分。系統(tǒng)功能模塊圖如下圖3.1所示:圖3.1系統(tǒng)功能模塊圖居中1 用戶登陸模塊登陸功能在本系統(tǒng)中非常重要,本系統(tǒng)實(shí)現(xiàn)購買功能必須是在線用戶。功能描述1. 對用戶輸入的用戶名進(jìn)行數(shù)據(jù)庫匹配,存在用戶然后匹配密碼。功能描述2. 對存在的用戶檢查是否激活,激活了才能登陸成功進(jìn)入首頁,否則跳轉(zhuǎn)到激活頁面。激活碼采用用戶名+隨機(jī)數(shù)產(chǎn)生。2 用戶注冊模塊注冊功能模塊也是B/S架構(gòu)系統(tǒng)必須具備的功能。功能描述1用戶進(jìn)行注冊,用戶名,密碼格式是否正確 JS檢查。功能描述2是否輸入了所有的信息值 ,驗(yàn)證碼檢查,采用流輸出。3 首頁展示模塊該功能模塊是整個該B/S 架構(gòu)系統(tǒng)最重要的部分,他是系統(tǒng)好壞的門戶。功能描述1圖書分類列出 從數(shù)據(jù)庫中讀取。功能描述2圖書展示 。功能描述3廣告展示 。功能描述4系統(tǒng)顯示是否登錄、是 顯示退出 否顯現(xiàn)登錄。4 圖書瀏覽功能功能描述1顯示圖書比較完整的基本信息。功能描述2可以選擇每一頁顯示多少、按什么排序顯示。5 添加產(chǎn)品到購物車功能功能描述1可以將喜歡的書添加到購物車。功能描述2購物車將存入session 并生成數(shù)據(jù)庫 到時候下次登錄可以直接查看。6 生成訂單并產(chǎn)生訂單詳細(xì)功能描述1可以對相應(yīng)的產(chǎn)品進(jìn)行購買,生成相應(yīng)的訂單。功能描述2對下了的訂單生成訂單詳細(xì),方便發(fā)貨。7 后臺管理員登陸功能描述1管理員通過身份確認(rèn)登陸到后臺管理界面。8 后臺用戶管理功能描述1分頁顯示所有注冊過的用戶。功能描述2后臺管理員可以對用戶進(jìn)行增、刪、改。9 后臺廣告管理功能描述1顯示數(shù)據(jù)庫存在的廣告功能描述2對廣進(jìn)行上傳,存放到數(shù)據(jù)庫10 后臺圖書管理功能描述1分頁顯示存在的圖書。功能描述2后臺管理員對圖書進(jìn)行增、刪、改。11 后臺訂單管理功能描述1分頁顯示所有的訂單。功能描述2可以對訂單進(jìn)行增、刪、改。3.3 系統(tǒng)用例模型3.3.1 普通用戶用例圖注冊用戶登錄后,可以瀏覽商品列表信息,購買商品,查看訂單,訂單退訂,修改個人信息等。圖 3.2 普通用戶用例圖3.3.2 管理員用例圖管理員登錄后,可以對圖書,用戶,訂單,廣告進(jìn)行管理。對廣告、圖書、用戶、訂單進(jìn)行基本的添加、修改、刪除、查詢等操作。圖3.3 管理員用例圖3.4 系統(tǒng)體系結(jié)構(gòu)根據(jù)該網(wǎng)上書店的基本功能需求,該系統(tǒng)基本結(jié)構(gòu)可分為前臺部分和后臺部分。而由于SSH框架的特點(diǎn),前臺和后臺部分架構(gòu)都是四層結(jié)構(gòu)。分別為表現(xiàn)層、控制層、業(yè)務(wù)層、數(shù)據(jù)層。表現(xiàn)層:主要負(fù)責(zé)用戶交互和結(jié)果顯示,交易系統(tǒng)和管理系統(tǒng)有不同的URL 入口界面。 控制層:主要負(fù)責(zé)系統(tǒng)的訪問控制、數(shù)據(jù)加載和注銷,是系統(tǒng)的核心控制單元??刂茖油ㄟ^系統(tǒng)描述來組織工作。 業(yè)務(wù)層:實(shí)現(xiàn)了交易系統(tǒng)和管理系統(tǒng)的主要業(yè)務(wù)邏輯,是系統(tǒng)主要的運(yùn)算單元。 持久層:實(shí)現(xiàn)了靜態(tài)數(shù)據(jù)和數(shù)據(jù)庫數(shù)據(jù)的持久化管理,為業(yè)務(wù)層提供數(shù)據(jù)服務(wù),是系統(tǒng)進(jìn)行數(shù)據(jù)操作的統(tǒng)一界面。 圖3.4前臺架構(gòu)圖3.5 數(shù)據(jù)庫設(shè)計(jì) 本次系統(tǒng)主要是基于B/S架構(gòu)的系統(tǒng),存在大量的數(shù)據(jù)讀入和取出,對數(shù)據(jù)庫表的要求比較高,每個功能模塊基本都涉及到了數(shù)據(jù)表。3.3.1 數(shù)據(jù)庫表E-R圖這個小標(biāo)題刪除圖3.5系統(tǒng)數(shù)據(jù)E-R圖3.3.2 數(shù)據(jù)庫表分析這個小標(biāo)題刪除對于B/S系統(tǒng)的網(wǎng)上書店來說,數(shù)據(jù)的存儲往往是難點(diǎn),因?yàn)橄到y(tǒng)將有大量的信息,為管理好改系統(tǒng),采用如下數(shù)據(jù)表存儲系統(tǒng)信息。用戶表:存儲用戶信息。包含用戶賬號,密碼,昵稱,性別,用戶地址省份,城市等信息。廣告表:存儲廣告信息。包含廣告編號,廣告圖片路徑,廣告描述。圖書表:存儲圖書信息。包含圖書編號,圖書名,圖書市場價,圖書書店價,作者,出版社,出版時間。圖書類型表:存儲圖書類型信息。包含圖書類型編號,類型名,父類類型編號。訂單項(xiàng)表:存儲單條訂單項(xiàng)信息。包含訂單項(xiàng)編號,訂單編號,產(chǎn)品編號,產(chǎn)品市場價,產(chǎn)品書店價,訂購數(shù)量,當(dāng)前訂單項(xiàng)積分。訂單表:存儲訂單信息。包含訂單編號,用戶編號,訂購時間,收貨人,收貨地址,總金額,電話。購物車表:存儲購物車信息。包含購物車編號,用戶編號,訂單項(xiàng)編號,總售價,總書店價,總積分。第四章 系統(tǒng)實(shí)現(xiàn)4.1 搭建開發(fā)環(huán)境 本次課題采用J2EE SSH框架,開發(fā)工具采用MyEclipse6.5,數(shù)據(jù)庫采用Oracle數(shù)據(jù)庫,為方便操作數(shù)據(jù)庫,采用oracle 客戶端pl/SQL。對于開源框架導(dǎo)入工程jar包尤為最終要。開發(fā)所需要的軟件如下:。開發(fā)軟件介紹:JDK:Java 虛擬機(jī) java 語言開發(fā)必須的編譯器。版本1.6 以上。MyEclipse6.5:java 開發(fā)工具。服務(wù)器:Tomcat5.0 以上Oracle數(shù)據(jù)庫:大型的數(shù)據(jù)庫服務(wù)器。版本10g 以上。PL/SQL:針對oracle 數(shù)據(jù)庫開發(fā)的一款界面操作客戶端。Editplus 或者Dreamweaver:文本編輯器,開發(fā)html/JSP 頁面工具。4.1.1 安裝開發(fā)工具(1) 登陸,下載最新版JDK。這里下載的是jdk-6u7-windows-i586-p版本。(2) 安裝JDK 1.6。(3) 安裝MyEclipse6.5。下載網(wǎng)站(4) 安裝Tomcat 服務(wù)器 ,在安裝過程中可以修改默認(rèn)端口8080。本次研究將端口改為8081 訪問地址http:/localhost:8081/ 也可以在安裝目錄:tomcatconfserver.xml 配置文件中修改。(5) 安裝Oracle 數(shù)據(jù)庫,在安裝過程中需要設(shè)置system/sys 數(shù)據(jù)庫默認(rèn)用戶的密碼還要端口1521,以及域名xe。4.1.2 開發(fā)軟件的配置(1) 配置MyEcliplise6.5 默認(rèn)JDK啟動MyEclipse6.5 在工具欄 window ->preferences ->java->Installed JREs 在界面上單擊add 然后單擊Browser 選擇你安裝的的JDK。(2) 配置MyEclipse6.5 服務(wù)器window -> preferences ->MyEclipse Enterprise Workbench->servers->Tomcat 單擊Tomcat6.x 在彈出的界面上,單擊Browser 選擇本地Tomcat 路徑。4.1.3 建立web工程搭建開發(fā)框架MyEclipse6.5 建立Web工程很方便,但是由于Java 語言的特點(diǎn),很多開源框架都用到了第三方的jar包 而這些jar包有時候會很容易導(dǎo)致jar包沖突,啟動服務(wù)器時會報一些莫名其妙的錯誤。因而使用SSH 開源框架開發(fā)Web項(xiàng)目,適當(dāng)導(dǎo)入jar包 避免jar包沖突很重要。1 建立Web工程 在工具欄 File ->New->Web Project 在彈出的對話框 輸入工程名,并選擇java EE 1.5 默認(rèn)是java EE 1.4。2 導(dǎo)入開發(fā)所需jar包在工程文件夾 WebRoot ->WEB-INF ->lib 導(dǎo)入開發(fā)所需的jar包4.2 數(shù)據(jù)庫實(shí)現(xiàn)4.2.1 數(shù)據(jù)庫表字段設(shè)計(jì)表4.1 用戶表(d_user)字段名字段說明字段類型字段約束是否為空userId用戶編號integer主鍵 非空email登錄郵箱varchar(50)非空nickName用戶昵稱varchar2(30)檢查約束非空password用戶密碼varchar2(30)檢查約束非空sex用戶性別varchar2(8)檢查約束(男)province用戶所在省份varchar2(20)city用戶所在城市varchar2(20)Status用戶狀態(tài)Integer檢查約束(0 1)eableMSG激活碼varchar2(50)表4.2 廣告表(d_advertise)字段名字段描述字段類型字段約束是否為空advertise_id廣告編號integer主鍵非空image_path廣告圖片路徑varchar2(200)非空description描述varchar2(100)表4.3 產(chǎn)品表(d_product)字段名字段描述字段類型字段約束是否為空productId產(chǎn)品編號integer主鍵非空imagePath產(chǎn)品圖片路徑varchar2(100)非空productName產(chǎn)品名varchar2(100)非空costPrice市場售價number(8,2)dangPrice系統(tǒng)售價number(8,2)非空author作者varchar2(40)publish出版社varchar2(50)publishTime出版時間varchar2(30)4.4 產(chǎn)品類別表(d_bookType)字段名字段描述字段類型字段約束是否為空typeId圖書類型idinteger主鍵非空typeName類型名varchar2(20)parentId父類型idinteger4.5 訂單表(d_orderDetailed)字段名字段描述字段類型字段約束是否為空orderDetailedId訂單詳細(xì)編號integer主鍵非空userId用戶編號integer非空orderTime訂購時間Date非空totalPrice總金額float非空receiveName收貨人varchar2(50)非空receiveTime收貨地址varchar2(200)非空postalCode郵政編碼varchar2(10)非空mobile電話varchar2(15)非空表4.6 訂單項(xiàng)列表(d_orderItem)字段名字段描述字段類型字段約束是否為空orderItemId訂單項(xiàng)編號integer 主鍵否orderDetailedId訂單詳細(xì)編號integer否productId產(chǎn)品編號integer否count訂購數(shù)量integer否dangTotalPrice系統(tǒng)價格float否costTotalPrice產(chǎn)品市場價float否sigleScore產(chǎn)品的積分integer否表4.8 購物車數(shù)據(jù)表(d_cart)字段名字段描述字段類型字段約束是否為空cartId購物車編號integer主鍵否userId用戶編號Integer外鍵否dangTatalPrice 系統(tǒng)總價float否costPrice市場總價 float否toatlScore總積分integer否表4.7 后臺管理員表(d_admin)字段名字段描述字段類型字段約束是否為空adminId管理員idinteger主鍵否login登陸賬號varchar2(30)否password密碼varchar2(30)否realName真實(shí)姓名varchar2(30)telephone電話varchar2(30)4.2.2 數(shù)據(jù)庫連接實(shí)現(xiàn)Java Web SSH 框架技術(shù)連接是數(shù)據(jù)庫,是通過Hibernate 框架技術(shù)訪問的。Spring框架的SessionFactory 類將連接數(shù)據(jù)庫操作分裝起來,通過配置文件bean.xml 文件反轉(zhuǎn)控制,連接數(shù)據(jù)庫。核心代碼:<!- 連接相關(guān)的屬性 -> <bean id="dataSource" class="mons.dbcp.BasicDataSource"> <property name="driverClassName"> <!驅(qū)動名-> <value>oracle.jdbc.OracleDriver</value> </property> <property name="url"> <!- url -> <value>jdbc:oracle:thin:127.0.0.1:1521:xe</value> </property> <property name="username"> <value>graduation</value> </property> <property name="password"> <value>wangjing</value> </property> </bean> <!- hibernate.cfg.xml Spring config -> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref local="dataSource"/> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.Dialect">org.hiberante.dialect.Oracle9Dialect</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.format_sql">true</prop> </props> </property> <property name="mappingResources"> <list> <value>com/wangjing/book/advertise/Advertise.hbm.xml</value> <value>com/wangjing/book/booktype/BookType.hbm.xml</value> <value>com/wangjing/book/product/Product.hbm.xml</value> <value>com/wangjing/book/user/User.hbm.xml</value> <value>com/wangjing/book/backstage/admin/Admin.hbm.xml</value> <value>com/wangjing/book/order/OrderDetailed.hbm.xml</value> <value>com/wangjing/book/order/OrderItem.hbm.xml</value> <value>com/wangjing/book/cart/Cart.hbm.xml</value> </list> </property> </bean> <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate"> <property name="sessionFactory"> <ref local="sessionFactory"/> </property> </bean>4.3 前臺主要功能模塊4.3.1 登陸功能的實(shí)現(xiàn)改成“登陸”系統(tǒng)的登陸界面(UI)設(shè)計(jì)如下圖:圖4.1 系統(tǒng)登陸界面用戶在登陸本網(wǎng)上書店系統(tǒng)的時候,只需要輸入正確的用戶信息和用戶密碼,即可實(shí)現(xiàn)登陸,系統(tǒng)將進(jìn)入首頁,首頁會顯現(xiàn)用戶昵稱信息,表示已經(jīng)成功登陸。如果用戶信息錯誤,系統(tǒng)將進(jìn)入到不同的頁面。用戶名不存在,系統(tǒng)將通過Action類跳轉(zhuǎn)到注冊頁面,如果通過數(shù)據(jù)庫驗(yàn)證用戶存在,但狀態(tài)未激活,系統(tǒng)將進(jìn)入激活頁面。登陸功能流程圖入下圖:圖4.2 登陸功能流程圖實(shí)現(xiàn)登錄功能的主要方法:public String checkUserLogin(String email, String password,ActionContext action) / TODO 檢查登陸是否成功User user = userDAO.queryUserByEmail(email);/ 賬號不存在if (user = null) return "notExit"if (user != null && user.getStatus() = 0) action.getSession().put("logined", user);return "status"/ 登陸成功if (user != null && user.getPassword().equals(password) action.getSession().put("logined", user);return "ok"return "error"4.3.2 注冊功能的實(shí)現(xiàn)改成“注冊”注冊頁面(UI)設(shè)計(jì):圖4.3 系統(tǒng)注冊界面用戶通過登錄界面的快速注冊用戶超鏈接進(jìn)入注冊界面,注冊界面用戶必須輸入用戶賬號,用戶昵稱,昵稱必須是字母,輸入用戶密碼,密碼由六位以上的字母或數(shù)字。通過單選框選擇用戶性別,通過下拉列表選擇地址,用戶必須輸入驗(yàn)證碼。正確輸入用戶信息后,注冊成功,將進(jìn)入激活頁面。否則會在注冊頁面上顯示錯誤信息提示。錯誤信息提示如下圖所示:圖4.4 注冊報錯頁面激活頁面(UI)設(shè)計(jì):圖4.5 激活界面圖已經(jīng)注冊的用戶可以在登錄界面登錄,但系統(tǒng)不會進(jìn)入主頁面,而是通過Action跳轉(zhuǎn)到激活頁面,在激活頁面會顯示當(dāng)前用戶的激活碼。用戶在激活頁面可以通過輸入顯示的激活碼,激活自己的賬號。激活成功系統(tǒng)將進(jìn)入登錄界面。激活碼算法是通過獲取當(dāng)前登錄用戶的郵箱,然后將字符串轉(zhuǎn)換成字符,對應(yīng)每一位乘以隨機(jī)函數(shù)產(chǎn)生的數(shù)乘以10轉(zhuǎn)換的整數(shù),然后組成新的字符串,作為激活碼。激活碼算法如下:/ 產(chǎn)生激活碼的算法public String createCodeString(String email) / 將數(shù)據(jù)char codeString = email.toCharArray();for (int i = 0; i < codeString.length; i+) codeStringi += (int) (Math.random() * 10);/ System.out.println(new String(codeString);return new String(codeString);注冊功能流程圖如下圖所示:圖4.6 注冊功能流程圖4.3.3 首頁功

注意事項(xiàng)

本文(基于Java Web SSH框架的網(wǎng)上書店)為本站會員(仙***)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!