【正文】
.......................................................................... 30 前臺(tái)詳細(xì)設(shè)計(jì) ............................................................................................................. 30 后臺(tái)詳細(xì)設(shè)計(jì) ............................................................................................................. 34 第七章 編碼 .......................................................................................................................... 39 開發(fā)環(huán)境搭建 ............................................................................................................ 39 三層架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn) ............................................................................................ 40 前臺(tái)編碼與實(shí)現(xiàn) ........................................................................................................ 46 后臺(tái)編碼與實(shí)現(xiàn) ........................................................................................................ 51 第八章 測(cè)試 .......................................................................................................................... 58 系統(tǒng)測(cè)試原理及測(cè)試原則 ......................................................................................... 58 VI 系統(tǒng)測(cè)試的方法 ......................................................................................................... 59 本系統(tǒng)測(cè)試 ................................................................................................................. 60 第九章 結(jié)束語 ...................................................................................................................... 73 論文總結(jié) ..................................................................................................................... 73 未來工作 ..................................................................................................................... 73 致 謝 ........................................................................................................................................ 74 參考文獻(xiàn) .................................................................................................................................. 75 附錄 .......................................................................................................................................... 77 附錄 A 相關(guān)的英文論文譯文 .......................................................................................... 77 附錄 B 相關(guān)的英文論文原文 .......................................................................................... 82 第一章 引言 1 第一章 引言 研究的背景及意義 隨著 計(jì)算機(jī)事業(yè) 和 社會(huì)經(jīng)濟(jì)的迅 速發(fā)展 , 科學(xué)技術(shù)的全面進(jìn)步,以計(jì)算機(jī)與網(wǎng)絡(luò)技術(shù)為基礎(chǔ)的信息系統(tǒng)正處于蓬勃發(fā)展的時(shí)期。這時(shí)就要開發(fā)一個(gè)購物系統(tǒng),基于 SSH 的網(wǎng)上商城系統(tǒng)就是其中的一種。商家建立網(wǎng)站,將商家各方面的宣傳與服務(wù)展現(xiàn)于網(wǎng)絡(luò)中,通過網(wǎng)絡(luò)更可實(shí)現(xiàn)如網(wǎng)上購物、信息查尋等功能,這些在改變我們?cè)薪?jīng)營方式與經(jīng)營理念的同時(shí),也為商家?guī)砹烁叩男б妗? 為了方便商家更好的盈利、買家更好的購物,我認(rèn)為有必要建立一個(gè)網(wǎng)絡(luò)商城系統(tǒng),使網(wǎng)絡(luò)商城更加 合理 ,避免購物管理的 危險(xiǎn)因素,提高信息處理的速度和安全 性, 同時(shí)能夠及時(shí)更新 相關(guān) 的信息。 研究現(xiàn)狀 隨著信息化的浪潮席卷全球,傳 統(tǒng)的商務(wù)模式受到巨大的沖擊。電子商務(wù)在中國也發(fā)展了一段時(shí)間,目前在國內(nèi)也有很多電子商務(wù)的平臺(tái),通過分析國內(nèi)的電子商務(wù)網(wǎng)站可知,目前國內(nèi)的電子商務(wù)做的都是集合型,一個(gè)平臺(tái)中各個(gè)方面的商務(wù)領(lǐng)域似乎都有涉及到。目前中國能用上電子商務(wù)平臺(tái)的都是一些大中型的企業(yè),而大部分的中小型,特別是小型企業(yè)還是用著以前的生意模式,靠朋友,靠關(guān)系,靠老客戶來維持企業(yè),這種模式在過去的時(shí)代會(huì)有一定的優(yōu)勢(shì),但在信息網(wǎng)絡(luò)時(shí)代這種模式缺乏主動(dòng)性,往往會(huì)使企業(yè)處在被動(dòng)的狀態(tài)。為了能夠上中小型企業(yè)特 別是小型企業(yè)能夠用上電子商務(wù)平臺(tái),我們特地開發(fā)此系統(tǒng),使中小型企業(yè)也能做到生產(chǎn),宣傳,銷售一條龍 [1]。傳統(tǒng)的基于 JSP, Servlet 以及JavaBean 技術(shù)所開發(fā)的系統(tǒng)擴(kuò)展能力不強(qiáng),不能夠滿足人們快速增長的需求,并且顯示頁面有時(shí)要進(jìn)行邏輯處理,降低了運(yùn)行效率。這使得使用 SSH 這三個(gè)開源框架的優(yōu)點(diǎn)被很好的體現(xiàn)出來了。表現(xiàn) 層主要是負(fù)責(zé)前臺(tái)的顯示,業(yè)務(wù)邏輯層主要負(fù)責(zé)處理業(yè)務(wù)邏輯以及頁面的轉(zhuǎn)向,持久層主要負(fù)責(zé)后臺(tái)與數(shù)據(jù)庫的連接以及交換數(shù)據(jù)。此外增加了持久層,也就增加了更多的安全性 [1]。隨著對(duì)軟件系統(tǒng)開發(fā)需求的增加和復(fù)雜度的提高,軟件架構(gòu)設(shè)計(jì)顯得尤其重要。在這種形勢(shì)下,傳統(tǒng)的 J2EE 架構(gòu)顯現(xiàn)出其不足之處,比如其中業(yè)務(wù)邏輯解決方案 EJB 機(jī)制對(duì)一般的 WEB 應(yīng)用顯得過于笨重,嚴(yán)重阻礙了 WEB 技術(shù)的發(fā)展。實(shí)際上其中一種就可以達(dá)到快速高效開發(fā)的目的,但是綜合利用這三種框架的優(yōu)點(diǎn)則可進(jìn)一步提高開發(fā)的效率,并且結(jié)果顯示該系統(tǒng)框架在可讀性、代碼重用性和維護(hù)各個(gè)方面上都有良好的改進(jìn)。 研究內(nèi)容 針對(duì) B/S 模式網(wǎng)絡(luò)商城系統(tǒng)的建設(shè)與應(yīng)用,提出基于 Struts+Spring+Hibernate(SSH)技術(shù)架構(gòu)的解決方法,給出其在 We b 系統(tǒng)快速設(shè)計(jì)與開發(fā)中的具體實(shí)現(xiàn)過程,結(jié)果證明, SSH 技術(shù)架構(gòu)在構(gòu)建復(fù)雜業(yè)務(wù)系統(tǒng)中提高了開發(fā)效率和系統(tǒng)的可維護(hù)性,同時(shí)增強(qiáng)了系統(tǒng)的可擴(kuò)展性。第二章 相關(guān)技術(shù)介紹 3 第二章 相關(guān)技術(shù)介紹 J2EE 概述 J2EE( Java 2 Platform, Enterprise Edition)是由 SUN 公司開發(fā)的一套以 Java2 平臺(tái)標(biāo)準(zhǔn)版為基礎(chǔ)的應(yīng)用規(guī)范,其作用是用于企業(yè)應(yīng)用軟件的開發(fā)、部署和管理。并且 J2EE 提供了事務(wù)處理,對(duì)象生存控制,并發(fā)控制,資源共享等系統(tǒng)服務(wù),只要利用簡單的配置就可以完成以上服務(wù),開發(fā)者因此可以從復(fù)雜且困難的系統(tǒng)設(shè)計(jì)中解脫出來,而將主要精力放在業(yè)務(wù)邏輯的設(shè)計(jì)上, J2EE 為企業(yè)提供了一個(gè)能夠明顯縮短開發(fā)時(shí)間的軟件開發(fā)體系結(jié)構(gòu)。對(duì)于應(yīng)用程序的高可靠性、高可用性和可擴(kuò)展性的需求來說, J2EE 提供了中間層集成框架用來滿足用戶。由于開發(fā)平臺(tái)的統(tǒng)一性, J2EE 能夠?qū)ΜF(xiàn)有應(yīng)用程序?qū)崿F(xiàn)較好的集成,降低了開發(fā)多層應(yīng)用系統(tǒng)程序的開發(fā)難度和代碼編寫量,進(jìn)而可以增強(qiáng)系統(tǒng)性能以及系統(tǒng)安全性和完整性 [4]。選擇一個(gè)好的開發(fā)框架進(jìn)行開發(fā)能夠極大地增加系統(tǒng)的可維護(hù)性,進(jìn)而提高開 發(fā)的效率。 J2EE 多層結(jié)構(gòu)的出現(xiàn)將面向?qū)ο蠹夹g(shù)推向了新的高點(diǎn)。并且生成的頁面和組件代碼完全符合 J2EE 標(biāo)準(zhǔn),開發(fā)人員可以開發(fā)出更為強(qiáng)大更具特色的應(yīng)用系統(tǒng) [5]。其架構(gòu)模型與傳統(tǒng)J2EE 架構(gòu)的關(guān)鍵區(qū)別在于各層的內(nèi)部實(shí)現(xiàn)方式不同。 Web 層使用 Struts 結(jié)構(gòu)完成數(shù)據(jù)的獲取和回復(fù),業(yè)務(wù)邏輯層通過使用Spring 的配置文件來進(jìn)行邏輯控制并對(duì)數(shù)據(jù)的處理,數(shù)據(jù)持久層使用 Hibernate 框架來進(jìn)行應(yīng)用程序與數(shù)據(jù)庫的數(shù)據(jù)交換。具體包括: ( 1) Web 層用來管理用戶的請(qǐng)求和響應(yīng),提供了一個(gè)控制器將調(diào)用委托給業(yè)務(wù)層進(jìn)行處理,將來自于其他層的處理納入到 Struts Action 中,并且執(zhí)行 UI 校驗(yàn)。 ( 3)數(shù)據(jù)持久層用來實(shí)現(xiàn)對(duì)象的映射關(guān)系, Hibernate 是通過 HQL 查詢語言,或者使用 API 存儲(chǔ)、更新和刪除存儲(chǔ)在數(shù)據(jù)庫中的信息。 W e b 瀏 覽 器 客 戶 層( V i e w ) J s p 頁 面( M o d e l ) J a v a B e a n ( C o n t r o l l e r ) S e r v l e tW e b 層( S t r u t s )S p r i n gS t r u t s A c t i o n S e r v l e tH i b e r n a t e D A O I m p lD A ORequestResponse業(yè) 務(wù) 邏 輯 層( S t r u t s + S p r i n g )數(shù) 據(jù) 持 久 層( H i b e r n a t e )D a t a b a s e 層M y S Q LM y S Q LO r a c l eO r a c l eS Q L S e r v e rS Q L S e r v e r 圖 SSH 三層架構(gòu)圖 第二章 相關(guān)技術(shù)介紹 5 其中 Web 層使用了 Struts 框架 , 實(shí)現(xiàn)了視圖控制的分離。 SSH 有以下顯著優(yōu)點(diǎn): ( 1)響應(yīng)速度快: SSH 三層架構(gòu)的數(shù)據(jù)持久層采用了 Hibernate 框架 , 提高了數(shù)據(jù)庫復(fù)用性 , 加快了服務(wù)器端的響應(yīng)速度。 ( 3)業(yè)務(wù)拓展性高:采用的三層架構(gòu)方式將表現(xiàn)層、業(yè)務(wù)層和數(shù)據(jù)庫持久層分離開來 , 分層的結(jié)構(gòu)方式使得業(yè)務(wù)拓展更為方便。 ( 5)代碼重用性高:視圖層使用 Struts 框架,使得頁面代碼具有高重用性。 Struts 框架 Struts 是對(duì)經(jīng)典設(shè)計(jì)模式 MVC 的一種實(shí)現(xiàn)類型,它是運(yùn)用面向?qū)ο笏枷朐O(shè)計(jì)的,實(shí)現(xiàn)了 MVC 模式 “ 分離顯示邏輯和業(yè)務(wù)邏輯 ” 的功能,使開發(fā)人員專注于解決實(shí)際的業(yè)務(wù)邏輯問題,因而能夠有效的幫助開發(fā)者提高利用 J2EE 開發(fā) Web 應(yīng) 用程序和系統(tǒng)的效率 [6]。 Struts 的體系結(jié)構(gòu)與工作原理如圖 所示。 Struts 對(duì) Model, View 和 Controller 都提 供了對(duì)應(yīng)的組XX 大學(xué) 本科畢業(yè) 設(shè)計(jì) : 基于 SSH 的網(wǎng)絡(luò)商城系統(tǒng) 6 件。 ( 1) 模型( Model) 在 Struts 框架中,模型是由內(nèi)部狀態(tài)和事務(wù)邏輯兩個(gè)部分組成。在小型的應(yīng)用程序中,事務(wù)邏輯可以作為控制器的一部分被嵌入到 Action 類中,而在較為復(fù)雜的大型應(yīng)用程序中,擁有狀態(tài)信息的 Bean 可以隨時(shí)地調(diào)用那些在內(nèi)部封裝了事務(wù)邏輯的 方法。 ( 3)控制器 (Controller) 在 Struts 中, Controller 組件由系統(tǒng)核心控制器,業(yè)務(wù)邏輯控制器兩部分組成。業(yè)務(wù)邏輯控制器負(fù)責(zé)調(diào)用 Model 來處理用戶請(qǐng)求,其本身不具備處理能力 [10]。 ( 2)核心控制器 Filter Dispatcher 根