【正文】
畢業(yè)設(shè)計(jì)(論文) 基于 Struts+Spring+Hibernate 架構(gòu)的藥品銷售系統(tǒng)研究與實(shí)現(xiàn) 學(xué)校代碼 10567 中圖分類號(hào) 專業(yè)代碼 學(xué)生學(xué)號(hào) xxx x x 大學(xué) 本科生畢業(yè)論文設(shè)計(jì) 論文題目 基于 StrutsSpringHibernate 架構(gòu)的藥品銷售系統(tǒng)研究與實(shí)現(xiàn) 姓名 Xxx 部系 信息工程學(xué)院 專業(yè) 信 息 與計(jì) 算科 學(xué) 年級(jí) 2021 級(jí) Email Xxx 指導(dǎo)教師 劉 x Xxx 教務(wù)處制 2021 年 4 月 2 日 目 錄 摘 要 I Abstract.................................................................... II 前 言 1 1 系統(tǒng)分析 2 11 需求分析 2 12 性能需求 2 13 運(yùn)行環(huán)境 2 備 2 序 2 2 系統(tǒng)總體框架 4 21 模型結(jié)構(gòu) 4 22 功能模塊簡(jiǎn)介 4 3 技術(shù)介紹 6 31 MVC 模 式 簡(jiǎn)介............................................... ........ 6 32 Struts2x 簡(jiǎn)介 6 33 Spring 簡(jiǎn)介 8 34 Hibernate 簡(jiǎn)介 9 4 系統(tǒng)詳細(xì)設(shè)計(jì) 11 41 數(shù)據(jù)庫(kù)設(shè)計(jì) 11 ER 圖 11 主要數(shù)據(jù)表 12 42 主要窗體界面 12 面和后臺(tái)首頁(yè) 12 5 藥品銷售系統(tǒng)實(shí)現(xiàn)... 15 51 域模型對(duì)象 15 52 持久層實(shí)現(xiàn) 15 53 業(yè)務(wù)邏輯層實(shí)現(xiàn) 17 54 表現(xiàn)層 19 視圖層 19 控制層 20 模型層............................... ....................... 21 結(jié) 束 語 22 參考文獻(xiàn) 23 譯 文 24 譯文原件復(fù)印件 31 致 謝 40 基于 StrutsSpringHibernate 架構(gòu)的藥品銷售系統(tǒng) 研究與實(shí)現(xiàn) 摘 要 隨著 Inter 技術(shù)和企業(yè)信息化建設(shè)的發(fā)展構(gòu)建基于 Web 的應(yīng)用系統(tǒng)的需求越來越復(fù)雜開發(fā)周期越來越緊迫開發(fā)可擴(kuò)展性好重用性高和易于維護(hù)易管理的 Web 應(yīng)用是當(dāng)前 Web 技術(shù)發(fā)展的熱點(diǎn)之一 論文結(jié)合藥品銷售系統(tǒng)多層次體系結(jié)構(gòu)發(fā)展的現(xiàn)狀探討 Struts2xSpring 和Hibernate 框架方法 本文以基于 J2EE 體系的 Web 開發(fā)方法為探討的基線首先從 ServletJsp 技術(shù)原理到結(jié)合這兩種技術(shù)進(jìn)行 Web 開發(fā)的 Model 1 和 Model 2設(shè)計(jì)再到實(shí)現(xiàn) Model2的 Struts架構(gòu)內(nèi)部機(jī)制進(jìn)行探討其次對(duì)持久層的設(shè)計(jì)進(jìn)行分析即 Hibernate 作為持久層實(shí)現(xiàn)結(jié)合 Spring 技術(shù)作為業(yè)務(wù)層實(shí)現(xiàn)進(jìn)行框架整合最后詳細(xì)論述該框架在藥品銷售系統(tǒng)中的應(yīng)用結(jié)果 通過實(shí)踐表明應(yīng)用這種系統(tǒng)框架可以提高系統(tǒng)開發(fā)效率同時(shí)滿足系統(tǒng)擴(kuò)展性和易于維護(hù)性的要求 結(jié)論 StrutsSpringHibernate 框架在 J2EE 開發(fā)中有著舉足輕重的地位 關(guān)鍵詞 Struts Spring Hibernate 架構(gòu) RESEARCH AND IMPLEMENTATION OF MEDICINESALES MANAGEMENT SYSTEM BASED ON STRUTS SPRING HIBERNATE Abstract With the Web technology development and the greater demands for application Systems based on Web to meet more plicated requirements shorter development cycle of software So the application of Web which has better development maintainability expansibility repeatability and easy management is the hotspot of the Web technology The paper is based on the web development methods of J2EE architecture Firstly introduce the technical principle of ServletJsp the Model1 and Model 2 design bining Servlet with JSP and the discuss of internal mechanism of Struts2x architecture which can better implement the Model 2 and so on Secondly I applied the Hibernate to the persistence layer applied the spring framework to the business layer conformed in framework and constructed a flexible extensible and high performance developing architecture Finally an example based on medicinesales management system is introduced to illustrate the process to build multitiers system with the help of the architecture Results show that this new framework Struts2xSpringHibernate helps to increase work efficacy in exploration Our study demonstrate that Struts2xSpringHibernate has important reference value for the J2EE development. Key wordsStruts Spring Hibernate Architecture 隨著 Inter 的普及越來越多的企業(yè)建立了自己的網(wǎng)站企業(yè)通過網(wǎng)站可以展示產(chǎn)品發(fā)布最新動(dòng)態(tài)與用戶進(jìn)行交流和溝通與合作伙伴建立聯(lián)系以及開展電子商務(wù)等其中系統(tǒng)是構(gòu)成企業(yè)網(wǎng)站的一個(gè)重要組成部分系統(tǒng)使用和開發(fā) 實(shí)現(xiàn)了網(wǎng)站動(dòng)態(tài)管理使 得對(duì)信息的管理更加及時(shí)高效提高了工作效率該系統(tǒng)具有一般系統(tǒng)的功能主要包括前臺(tái)和后臺(tái)區(qū)可為發(fā)布為提供管理的服務(wù)系統(tǒng)是基于 BS BrowserServer 瀏覽器客戶端 模式實(shí)現(xiàn)基于架構(gòu)開發(fā)設(shè)計(jì)主要實(shí)現(xiàn)對(duì)的發(fā)布與管理功能對(duì)信息的瀏覽等 隨著 InterIntra 技術(shù)的興起 1 系統(tǒng)分析 11 需求分析 該系統(tǒng)的用戶為藥品銷售企業(yè)每日需要發(fā)布一些最新藥品信息和提供在線購(gòu)買服務(wù)如何能有效地管理和發(fā)布信息及日常購(gòu)物產(chǎn)生的信息呢最初用戶的需求為該藥品銷售系統(tǒng)具有一般藥品銷售系統(tǒng)的功能同時(shí)具有管理員對(duì)后臺(tái)數(shù)據(jù)的處 理功能如新藥品上架下架和輸入價(jià)格及調(diào)整會(huì)員價(jià)格等 根據(jù)藥品銷售系統(tǒng)管理的實(shí)際需求在首頁(yè)中能顯示最熱賣的藥品口碑好的藥品和最新價(jià)格等同時(shí)在后臺(tái)發(fā)布藥品時(shí)可以添加圖片也可以添加 6HTML 語法在前臺(tái)能自動(dòng)根據(jù)所顯示的圖片和 HTML 語法來顯示藥品信息 在后臺(tái)管理中因?yàn)橛袡?quán)限的管理員才能登錄管理后臺(tái)所以需要有商品類型添加模塊商品添加模塊管理訂單模塊在前臺(tái)一般的瀏覽用戶能根據(jù)自己的需要選擇合適的藥品進(jìn)行購(gòu)買能返回訂單號(hào)等功能模塊 12 性能需求 該系統(tǒng)在性能功能上應(yīng)達(dá)到如下需求 操作簡(jiǎn)單界面友好完全控件式的頁(yè)面布局使得 的錄入工作更簡(jiǎn)便許多選項(xiàng)包括來源等只需要點(diǎn)擊鼠標(biāo)就可以完成另外跟蹤出現(xiàn)的提示信息也讓用戶隨時(shí)清楚自己的操作情況常見網(wǎng)站的的各個(gè)方面錄入瀏覽刪除修改等方面實(shí)現(xiàn)了網(wǎng)站對(duì)即時(shí)的管理要求即時(shí)可見對(duì)的處理包括錄入修改刪除將立即在主頁(yè)的對(duì)應(yīng)欄目顯示出來達(dá)到即時(shí)發(fā)布即時(shí)見效的功能硬件要求具有 Pentium III 處理器且滿足以下要求的計(jì)算機(jī)最低 64 MB 內(nèi)存最小 21 GB 硬盤服務(wù)器硬件要求具有 Pentium III 處理器以上且滿足以下要求的計(jì)算機(jī)最低 256MB 內(nèi)存最小 8 GB 硬盤客戶端操作系統(tǒng) Windows 98NT2021 或更高版本 瀏覽器 IE 50 以上或 Netscape 同等版本以上服務(wù)器操作系統(tǒng) Windows 2021 ServerWeb 服務(wù)器數(shù)據(jù)庫(kù) 圖 211 藥品銷售系統(tǒng)的模型結(jié)構(gòu)圖 該系統(tǒng)結(jié)構(gòu)分為三個(gè)邏輯層 Web 層 Web 層為客戶端瀏覽器提供對(duì)應(yīng)用程序的訪問這一層是作為解決方案文件中的 Web 項(xiàng)目實(shí)現(xiàn)的 Web 層由 JSP 組成 Web 視圖層是用 JSP 提供用戶操作而 Struts2x 中 Action 實(shí)現(xiàn)各種控件的事件處理程序 [3][5] 業(yè)務(wù)層包含各種業(yè)務(wù)規(guī)則和邏輯的實(shí)現(xiàn)業(yè)務(wù)邏輯利用 Spring 完成如用戶賬戶的驗(yàn)證和類型轉(zhuǎn)換這樣的任務(wù) [3][5] 數(shù)據(jù)訪問層數(shù)據(jù)訪問層為業(yè)務(wù)層提供數(shù)據(jù)服務(wù)這一層是使用 Hibernate 進(jìn)行 DAO 封裝從而實(shí)現(xiàn)面向?qū)ο蟮牟僮鲾?shù)據(jù)庫(kù) 22 功能模塊簡(jiǎn)介 藥品銷售系統(tǒng)主要包含用戶管理藥品類型管理藥品管理購(gòu)物車管理和訂單管理圖 221 列出系統(tǒng)的功能圖 圖 221 藥品銷售系統(tǒng)的模型結(jié)構(gòu)圖 系統(tǒng)工作流程為 圖 222 藥品銷售系統(tǒng)的工作流程圖 3 技術(shù)介紹 31 MVC 模式簡(jiǎn)介 [1] MVC模式即模型視圖控制器 modelviewcontroller模式實(shí)質(zhì)上 MVC模 式是對(duì)于 GOF的 23種設(shè)計(jì)模式中一些基本模式的集合和優(yōu)化 [4]MVC模式是目前交互式系統(tǒng)應(yīng)用最廣的一種分層架構(gòu)能很好地實(shí)現(xiàn)用戶界面層和業(yè)務(wù)處理層隔離對(duì)代碼進(jìn)行模塊化的劃分從而使系統(tǒng)中的各個(gè)功能模塊之間達(dá)到解耦的效果也很好地遵循 OCP 原則 OpenClosed Principle 下面是 MVC 示意圖 圖 311MVC 模式圖 模型層 模型層表示業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯主要任務(wù)是執(zhí)行對(duì)數(shù)據(jù)的操作如對(duì)數(shù)據(jù)CRUD 操作模型是專門負(fù)責(zé)維護(hù)數(shù)據(jù)的本身并不能決定這些數(shù)據(jù)對(duì)用戶端的表示方法而是只提供一些對(duì)外的接口這些接口包括取值或 改值方法讓視圖和控制器可以獲得模型的內(nèi)部數(shù)據(jù)或者對(duì)其進(jìn)行修改如圖中的查詢數(shù)據(jù)和修改數(shù)據(jù) 視圖層 視圖是直接與用戶交互的界面視圖的主要任務(wù)是表達(dá)數(shù)據(jù)和接受用戶動(dòng)作并把動(dòng)作的請(qǐng)求傳遞給控制器視圖可以調(diào)用模型提供的取值方法查詢業(yè)務(wù)狀態(tài)但是不能直接改變模型的數(shù)據(jù)視圖接受用戶動(dòng)作要求改變顯示數(shù)據(jù)必須經(jīng)過控制器由控制器負(fù)責(zé)調(diào)用對(duì)應(yīng)的模型中相應(yīng)方法修改模型中的數(shù)據(jù) 控制器 控制器的任務(wù)就是來執(zhí)行動(dòng)作即立即處理由視圖接受的各種用戶動(dòng)作控制器是 MVC 的中樞系統(tǒng)當(dāng)用戶通過視圖通過提交請(qǐng)求發(fā)出更新模型指令時(shí)都是通過控制器進(jìn)行的 MVC 的優(yōu)點(diǎn) 首先多個(gè)視圖能共享一個(gè)模式從而提高代碼的重用性 其次三層之間是相互獨(dú)立的當(dāng)軟件需要改動(dòng)時(shí)能集中于某個(gè)層而不必牽一發(fā)而動(dòng)全身因此降低了代碼的耦合性 最后采用 MVC 模式思想能在軟件開發(fā)過程中實(shí)現(xiàn)很好的分工提高開發(fā)效率 32 Struts2 簡(jiǎn)介 [2] [3] 對(duì)于 Struts 大家很熟悉了它是一個(gè)基于 MVC 的框架經(jīng)過多年的開發(fā)已經(jīng)變得非常成熟穩(wěn)定并為廣大開發(fā)人員所接受成為了世界上應(yīng)用最廣泛的 MVC 框架但是通常所說的 Struts是指 Struts1xStruts1x框架是以 ActionServlet為核心控制器整個(gè)應(yīng)用以客戶端請(qǐng)求驅(qū)動(dòng)相對(duì)于 Struts2x 而言 Struts1x 與JSPServlet 耦合非常緊密 Struts2x 是由另外一個(gè)著名的開源框架 WebWork 發(fā)展而來的 Struts2 的設(shè)計(jì)思想和核心框架與 WebWork是完全一致的同時(shí)它也吸收了 Struts1中的一些千錘百煉的優(yōu)點(diǎn) Struts2是集成 Struts1和 WebWork兩者設(shè)計(jì)思想之優(yōu)點(diǎn)而設(shè)計(jì)出來的新一代 MVC 框架 Struts2 的工作流程圖如下 圖 312 struts 工作流程圖 Struts2x 框架的工作流程 瀏覽器發(fā)送一個(gè)請(qǐng)求 核心控 制器 FilterDispather 根據(jù) Web 瀏覽器發(fā)來的請(qǐng)求決定調(diào)用合適的Action 攔截器鏈自動(dòng)對(duì)請(qǐng)求應(yīng)用驗(yàn)證等通用功能 回調(diào) Action 的 execute 方法 Action的 execute方法執(zhí)行結(jié)果將輸出到瀏覽器中以多種 返回給 Web瀏覽器 33 Spring 簡(jiǎn)介 [2] [3][6] Spring 框架是一個(gè)分層架構(gòu)由 7 個(gè)定義良好的模塊組成 Spring 模塊構(gòu)建在核心容器之上核心容器定義了創(chuàng)建配置和管理 bean 的方式如圖 1