国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于經典MVC架構的實現(xiàn)Web應用系統(tǒng)設計與實現(xiàn)

2017-04-25 09:41張睿涵遼寧錦州渤海大學信息科學與技術學院
數碼世界 2017年4期
關鍵詞:設計模式視圖架構

張睿涵 遼寧錦州渤海大學信息科學與技術學院

基于經典MVC架構的實現(xiàn)Web應用系統(tǒng)設計與實現(xiàn)

張睿涵 遼寧錦州渤海大學信息科學與技術學院

MVC設計架構是一種經典的軟件設計模式,并廣泛應用于Web應用系統(tǒng)開發(fā)過程,本文分析討論面向對象的MVC設計模式,分析該設計模式基本原理和構成機制,并將MVC設計架構融入到本文的系統(tǒng)開發(fā)過程中。通過對MVC設計模式的研究,本文講述MVC設計架構的應用系統(tǒng)開發(fā)原理及優(yōu)缺點,基于MVC設計架構的開發(fā)軟件應用系統(tǒng)的流程,并基于MVC設計架構實現(xiàn)光盤發(fā)布應用系統(tǒng)模型,將MVC設計架構應用于JSP開發(fā)技術中。經過本文研究的系統(tǒng)可以充分使用MVC設計架構。

MVC設計架構 Web應用系統(tǒng) J2EE平臺 光盤發(fā)布 JSP技術

1 引言

隨著Web應用系統(tǒng)的使用不斷增多的現(xiàn)象,對于Web應用系統(tǒng)的開發(fā)與設計使用MVC設計架構,開發(fā)Web應用系統(tǒng)無論選擇什么編程語言,無論應用系統(tǒng)業(yè)務功能流程多復雜,都可成為應用系統(tǒng)所提供通用設計模式框架,為了構造通用應用系統(tǒng)提供基本的設計框架。本文通過對光盤發(fā)布應用系統(tǒng)的實踐,深入研究基于MVC設計架構的Web應用系統(tǒng)。

本文涉及到的MVC設計模式(模型M一視圖V一控制器C),這種設計模式堪稱軟件設計的經典模式。每個系統(tǒng)的用戶界面,負責顯示系統(tǒng)數據和與用戶交互操作的功能。用戶希望與應用系統(tǒng)之間保持交互操作順暢,用戶希望系統(tǒng)能呈現(xiàn)動態(tài)改變內容或者其他展現(xiàn)形式,這就要求系統(tǒng)需要滿足用戶界面需求的同時,系統(tǒng)邏輯模型獨立于用戶界面的組成,MVC開發(fā)模型使得類對象的強制分離,因此,實現(xiàn)Web應用系統(tǒng)基于MVC設計模式作為一種層次結構分離的模型是最佳的選擇,Web應用系統(tǒng)的設計、開發(fā)和維護變得非常靈活,極大地提高了模塊之間的重用性。

2 MVC設計模式概述

2.1 MVC的基本設計思想

Model、View和Controller的簡稱,即是MVC。需要將一個應用系統(tǒng)的輸入、數據加工處理和輸出過程均是按照這個流程方式實現(xiàn)業(yè)務功能的分離,應用系統(tǒng)形成以模型、視圖和控制三層的軟件架構。

模型層(Model):負責處理業(yè)務/狀態(tài)的處理過程以及業(yè)務規(guī)則定義。業(yè)務狀態(tài)處理流程對于其他層而言模糊操作,模型層接受來自視圖層用戶請求的數據處理過程,并為用戶返回有關的處理結果。

視圖層(Viewer):負責用戶數據交互操作界面,因此,對于Web應用系統(tǒng)而言,基本上為HTML實現(xiàn)的網頁,但是,也可以將XHTML、XML和Applet等技術應用到HTML網頁前端。通常情況下,應用系統(tǒng)可能存在多種不同的視圖層,通過MVC設計模式實現(xiàn)的系統(tǒng),視圖的作用負責對頁面控件數據的采集和系統(tǒng)處理數據的顯示,即負責接收來自用戶請求以及顯示處理結果的功能,而不負責在視圖層的業(yè)務功能處理過程。應用系統(tǒng)的業(yè)務流程處理過程交給模型層處理。

控制層(Controller)完成的是從用戶獲取請求操作,負責模型與視圖建立聯(lián)系,共同完成用戶請求操作。它屬于控制調度層,它負責清楚地告訴程序員,它完全是控制轉發(fā)器,選擇哪種模型,就負責處理哪種視圖,也就完成哪種用戶請求。在MVC設計模式中,控制層并不需要做任何的業(yè)務數據處理。當用戶點擊某個功能連接時,控制層接受來自用戶的請求之后,并不需要處理業(yè)務數據,它只負責找到相匹配的模型的函數,并將參數傳遞該模型車的函數,并告訴應該做什么,當模型層處理完畢業(yè)務數據控制層接收來自于模型層的處理結果,并把符合要求的處理結果返回到視圖層為用戶顯示。因此,模型層與視圖層是一對多的關系。

在MVC設計思想中的核心是業(yè)務功能模型的設計。業(yè)務模型層設計過程中數據模型。數據模型主要完成數據持久化操作,是指實體對象與表字段一一映射關系。例如:將淘寶訂單數據保存到系統(tǒng)的數據庫中,或者從系統(tǒng)的數據庫獲取淘寶訂單數據??梢詫⒋四P蛦为毩_列,全部的數據庫操作僅僅限于該模型中,為用戶提供相關服務。

2.2 基于MVC設計模式開發(fā)應用系統(tǒng)的優(yōu)點

此前的Web應用系統(tǒng)將業(yè)務數據處理與結果顯示置于同一個頁面的編程方式,這種方式使得程序編寫與調試變得麻煩,而基于MVC設計模式實現(xiàn)的應用系統(tǒng)設計,具備下列的優(yōu)點:

(1)模型層與視圖層是一對多的關系。一個模型與多個視圖建立聯(lián)系??梢源_保全部相關的視圖及時獲得來自于模型層數據的變化,使得全部相關的視圖與控制層實現(xiàn)操作同步。

(2)視圖與控制器實現(xiàn)靈活對接,允許新修改視圖與控制層之間關聯(lián)的業(yè)務數據,而且重要的是可以實現(xiàn)需求動態(tài)更改相互的關聯(lián),例如:打開、修改或者關閉等操作。

(3)模型的可移植性與可重用性。因為模型是獨立于視圖的,所以可以把一個模型獨立地移植到新的平臺工作。需要做的只是在新平臺上對視圖和控制器進行新的修改。

(4)使用MVC設計思想的應用系統(tǒng)具有清晰的軟件結構。大多數應用系統(tǒng)都可以實現(xiàn)的MVC三層架構設計,正因如此,方便基于此設計模式建立一種可以通用框架結構,不局限于視圖設計過程中,而且還可以用在系統(tǒng)總體布局或者局部功能設計。

(5)便于應用系統(tǒng)規(guī)劃管理。在MVC架構設計中,由于不同層職責不同,每層具體應用又存在相似的特征,便于應用系統(tǒng)規(guī)劃管理、管理程序代碼,極大提高應用系統(tǒng)編程效率。

(6)有利于應用系統(tǒng)的功能擴展與維護操作。一個應用系統(tǒng)被設計為3層架構模式,有時改變某層需求就能滿足用戶。例如:某個應用系統(tǒng)的業(yè)務流程設計或者業(yè)務規(guī)則定義的改變只需修改MVC結構中的模型層即可。

3 基于MVC的Web應用系統(tǒng)的設計

根據MVC的基本設計,基于MVC實現(xiàn)的應用系統(tǒng)設計首先要獲取系統(tǒng)應用的需求,設計應用系統(tǒng)的MVC結構,即將其按照系統(tǒng)功能設計MVC的三層結構,前提需要充分了解系統(tǒng)的全部需求。這里所闡述的應用系統(tǒng)實例是本人日常工作中所負責軟件項目部分—隨書光盤發(fā)布應用系統(tǒng)的設計與開發(fā)。設計該系統(tǒng)的目的完成非圖書資源在高校內的發(fā)布情況,以方便廣大師生借閱使用。

3.1 應用系統(tǒng)的需求分析

通過對高校很多師生及系統(tǒng)的管理人員的需求展開調查分析,并總結出光盤發(fā)布應用系統(tǒng)主要功能功能包括:

(1)前臺業(yè)務管理功能。為高校很多師生提供業(yè)務服務功能,主要有圖書檢索、電子資料下載、某些特殊資源開放申請功能以及師生留言等功能。

(2)后臺綜合業(yè)務管理功能。該功能是系統(tǒng)管理員實現(xiàn)管理、發(fā)布某些資源提供便利的渠道。主要包括:發(fā)布與更新電子資料功能、不定期的電子數據批量導入功能、處理審核審批功能以及數據備份與恢復操作。

3.2 數據庫設計

根據應用系統(tǒng)的功能實際需求,主要實體是圖書表以及光盤發(fā)布記錄表等等。根據數據庫設計原理獲取表的概念模型,因此,圖書表(book)轉換的對應關系主要包括:bookID(圖書序號)、bookName(圖書名稱)、bookType(圖書分類信息)、bookT(中英文對照)、bookD(是否具有電子資源)、bookask(圖發(fā)布申請字段)等。

3.3 構建基于MVC設計模式的系統(tǒng)模型

根據MVC設計模式,使用數學參考模型表示MVC設計實現(xiàn)的應用系統(tǒng):

A表示應用系統(tǒng)的簡稱,M、V、C分別MVC設計模式中的三層結構,R表示用戶請求列表,正是,根據該數學參考模型,最后將確定的光盤發(fā)布應用系統(tǒng)的全部功能進行劃分層次。

(1)系統(tǒng)將直接與用戶交互的模塊劃分到視圖層V列表中。

(2)把數據庫邏輯處理部分劃分到模型層M列表中,把數據庫的建立連接管理、數據檢索功能(包含:目錄分類檢索、初步數據檢索、高級數據檢索)以及數據更新操作管理(發(fā)布與更新電子資料功能、不定期的電子數據批量導入功能、處理審核審批功能以及數據備份與恢復操作)劃分到模型層M列表中。

(3)來自于用戶請求處理并調用對應業(yè)務邏輯關系,并將業(yè)務處理結果返回視圖層為用戶頁面顯示,負責收集處理結果和控制轉發(fā)由控制層實現(xiàn)。

4 基于MVC設計模式的Web應用系統(tǒng)的實現(xiàn)

建立應用系統(tǒng)的MVC設計模式之后,方可選擇適用的開發(fā)工具實現(xiàn)系統(tǒng)的開發(fā)工作。本文根據實際情況選擇了JSP技術、Servlet技術和JavaBeans技術的結合。

4.1 實現(xiàn)應用系統(tǒng)的技術組合

JSP技術、Servlet技術和JavaBeans技術的結合是MVC設計模式的經典應用,三者的結合可以更好地實現(xiàn)MVC設計模型的應用系統(tǒng)。

(1)應用系統(tǒng)的模型層。它是由JavaBean對象組件完成,并將業(yè)務數據封裝到其中。

(2)應用系統(tǒng)的視圖層。它是由JSP技術負責實現(xiàn)頁面數據的顯示功能。

(3)應用系統(tǒng)的控制層。它是由Servlets技術接受來自于用戶輸入請求以及某個操作的提交,并根據相應的請求操作,調用相應業(yè)務邏輯處理組件,并收集處理結果轉發(fā)給相應的視圖層頁面顯示。

4.2 實現(xiàn)Web應用系統(tǒng)

上述已經對光盤發(fā)布應用系統(tǒng)的技術架構分析、功能需求分析以及數據庫結構分析,而三種技術的組合更好的完成了MVC設計思想。為此,三種技術的結合有效的完成映射操作。將應用系統(tǒng)模型層的各種業(yè)務處理邏輯通過使用JavaBeans對象組件實現(xiàn),本文實現(xiàn)的應用系統(tǒng)的數據庫采用SQL2005管理技術;視圖層采用JSP技術每個功能界面;同時控制層的編寫通過Servlets控制器實現(xiàn)接受請求和處理結果的轉發(fā)操作:在應用系統(tǒng)的實現(xiàn)過程中,使用JS作為前端判斷技術,用于表單字段的判斷及數據輸入的標準性判斷。

5 本文結論與未來研究方向

基于MVC設計模式開發(fā)實現(xiàn)的光盤發(fā)布應用系統(tǒng),由于其應用到MVC設計模式存在的優(yōu)勢,應用系統(tǒng)中持久層、模型層、業(yè)務處理層與顯示層有效分離,好處是:一是在開發(fā)過程中,便于多人協(xié)作編碼,又便于系統(tǒng)的設計文檔編寫工作,提高多人共同開發(fā)的效率;二是應用系統(tǒng)上線運行之后的升級維護操作必不可少,用戶希望與應用系統(tǒng)之間保持交互操作順暢,對應用系統(tǒng)的功能擴展與維護變得簡單可行。基于MVC設計的應用系統(tǒng)正被更多的人使用,如果時一種通用設計框架,為開發(fā)者帶來更多的開發(fā)便利,提高應用系統(tǒng)的代碼可重用性提供了新的契機。

[1]宋國慶.軟件開發(fā)綜合訓練教程基于JavaWeb應用[M].北京:高等教育出版社,2008

[2]王映輝,王英杰,王彥君,等.基于MVC的軟件界面體系結構研究與實現(xiàn)[J].計算機應用研究,2004(9):188-199

[3]孫衛(wèi)琴.精通Struts:基于MVC的JavaWeb設計與開發(fā)[M].北京:電子工業(yè)出版社,2004

[4]劉春花,王忠民.基于MVC模式的遠程評議系統(tǒng)的設計與實現(xiàn)[J].計算機工程與設計,2008,29(13):3648

[5]王曉楠.MVC的設計和實現(xiàn)[J].計算機系統(tǒng)應用,2004(3):56-58

猜你喜歡
設計模式視圖架構
基于FPGA的RNN硬件加速架構
設計模式識別的特征信息分類研究
“1+1”作業(yè)設計模式的實踐探索
功能架構在電子電氣架構開發(fā)中的應用和實踐
智慧圖書館環(huán)境下的融貫式服務設計模式研究
三維協(xié)同設計模式下的航天項目管理實踐與展望
構建富有活力和效率的社會治理架構
視圖
Y—20重型運輸機多視圖
SA2型76毫米車載高炮多視圖
许昌市| 奉化市| 武陟县| 盈江县| 东丽区| 怀来县| 保山市| 汉源县| 承德县| 沂南县| 富蕴县| 柳州市| 出国| 新乡县| 盐亭县| 正宁县| 玛曲县| 石柱| 涞源县| 大连市| 宁波市| 阿荣旗| 富蕴县| 旺苍县| 泰州市| 延边| 宁乡县| 青岛市| 墨玉县| 嘉荫县| 黄平县| 平泉县| 黄浦区| 南岸区| 青铜峡市| 乾安县| 塘沽区| 灵武市| 共和县| 兴义市| 阜康市|