999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

改進的MVC設計模式的研究與應用*

2015-01-09 03:53:54劉紅霞陸文迪
計算機工程與科學 2015年9期
關鍵詞:頁面用戶模型

劉紅霞,陸文迪

(南京工業大學計算機科學與技術學院,江蘇 南京 211816)

改進的MVC設計模式的研究與應用*

劉紅霞,陸文迪

(南京工業大學計算機科學與技術學院,江蘇 南京 211816)

分析了.NET平臺下傳統MVC設計模式存在的數據處理能力低、代碼復用率低等缺陷,結合中間件和頁面局部刷新技術,提出了一種改進的MVC設計模式。并根據改進的MVC設計模式,設計了鋼鐵企業質量異議換貨系統。系統運行表明,改進的MVC設計模式的使用,有效增強了系統的魯棒性,平衡了層間耦合性,并提高了代碼的復用率和系統開發效率。

MVC;中間件;異步刷新;質量異議換貨

1 引言

隨著信息技術和網絡技術的不斷飛躍,辦公自動化系統作為解決企業日常管理規范化、增加企業可控性、提高企業運轉效率等問題的有效手段,已成為各種應用型研究開展實施的主要對象[1]。在辦公自動化系統實現的過程中,常常會為滿足大量相似但不完全相同的業務需求而不得不做很多重復性的工作,使得系統的結構變得復雜,難以維護和擴充。

MVC設計模式在目前是一種應用比較普遍的設計模式,是實現系統職能分工的典范[2]。經過不斷的嘗試和檢驗,它已經成為開發Web應用最合適的模板。MVC設計模式實現了系統各層間的分離,在一定程度上降低了軟件系統的開發周期和維護成本,使系統具有較高的靈活性、伸縮性和可擴展性[3]。但是,典型的MVC也存在缺陷:傳統開發方式導致了代碼復雜、復用率低,客戶端對服務器端數據的低效率訪問影響了系統的性能。

本文針對MVC設計模式存在的不足,使用中間件和頁面局部刷新等技術對MVC進行改進,并以改進的MVC設計模式為基礎,設計和開發了鋼鐵企業的質量異議換貨系統。

2 MVC設計模式

MVC設計模式適用于大型可擴展的Web系統的開發。根據功能的不同,MVC模式將一般的軟件系統劃分為三個部分,即模型(Model)-視圖(View)-控制器(Controller),如圖1所示。

Figure 1 MVC model

模型是整個MVC中的核心部分,封裝了與應用問題中業務邏輯相關的數據以及數據的操作過程。模型一方面被控制器使用,完成應用程序的行為改變,另一方面為視圖的狀態查詢提供相應數據。視圖是MVC模式下面向用戶的顯示界面。視圖將用戶數據傳送給模型處理,并由控制器控制,從模型處獲得更新后的數據進行顯示??刂破魇且晥D和模型間的橋梁,用于處理用戶的操作請求。它從視圖獲取用戶的輸入并決定調用相應的模型構件去處理。

MVC的處理過程是這樣的:對于每一個用戶輸入的請求,首先被控制器接收,并決定由哪個模型來進行處理,然后模型通過業務處理邏輯處理用戶的請求并返回數據,最后控制器用相應的視圖格式化模型返回的數據,并通過顯示頁面呈現給用戶[4]。

這樣劃分MVC,能有效地區分顯示數據和存儲數據的功能模塊,使得頁面、數據和業務邏輯之間的耦合度降低。但是,MVC也存在一定的缺陷:在系統開發過程中,存在許多共性業務需求,相似功能模塊的開發往往會因為人員素質的不同而破壞代碼的統一性,使代碼邏輯復雜,復用率低;視圖和模型的交互基于請求/響應的模式,這導致更新頁面中的數據必須對頁面進行整體刷新,造成視圖對未變化數據的不必要的頻繁訪問,降低了訪問效率,使系統處理數據能力大大降低。

3 改進MVC設計模式

3.1 改進MVC架構設計

本文針對傳統MVC設計模式存在的代碼復用率低、數據處理能力低的缺陷,設計了改進的MVC,其在視圖和控制器、控制器與模型的交互中應用了中間件技術,并在視圖層中采用了頁面局部刷新技術,其總體框架如圖2所示。

中間件是基礎軟件的一大類,屬于可復用軟件范疇。中間件處于系統軟件(操作系統、網絡軟件和數據庫)之上,應用軟件之下,通過提取某些具體應用中的共性業務需求,將相關解決方案構件化,為處于上層的應用軟件提供運行與開發的環境,并通過簡單的客戶化定制,幫助用戶靈活、高效地開發應用軟件。在改進的MVC設計模式中使用中間件技術,可以把系統開發過程中相似的功能模塊用相應的中間件來替代,使系統各層間的耦合度進一步降低,提高代碼復用率[5,6]。

頁面局部刷新技術Ajax的使用,可以使用戶請求與服務器響應異步化,實現無刷新更新頁面。Ajax是多種網頁技術的結合,主要包括HTML、Javascript、DOM等。Ajax使用Javascript中的XmlHttpRequest對象發送用戶請求并獲得控制器的響應,在不重新載入整個頁面的情況下通過Javascript操作DOM來實現頁面局部更新和異步請求[7],所以系統中頁面導航、數據校驗等工作可以交給Ajax來執行。同時,不是所有的業務邏輯都交由服務器進行處理,客戶端負責處理一些簡單的數據校驗和數據編輯等工作。把原本由控制器和模型完成的工作轉移到客戶端來完成,利用客戶端閑置的處理能力來進行處理,減輕了服務器的負擔[8,9]。

3.2 改進MVC處理流程

改進的MVC設計模式的時序圖如圖3所示。用戶通過瀏覽器發送HTTP請求傳遞給視圖和Ajax,Ajax將請求變量數據存儲在JavaScript變量中。如果客戶端能夠直接處理或不需要進行刷新操作,Ajax則直接進行處理,并更新視圖,將結果返還給用戶,而不能直接被客戶端處理必須由后臺服務器才能完成的操作,Ajax就將請求發送給控制器,同時通過XML或視圖將實體數據也傳輸給控制器,控制器根據接收的用戶請求,自動判斷需要調用的中間件和模型來進行操作。當模型接收到請求任務后,將請求數據分發給相應的業務邏輯模塊,由一個或多個業務邏輯模塊在服務器端訪問相應數據庫資源去完成處理。當處理完成后,控制器把業務邏輯模塊返回的數據通過中間件選擇合適的視圖來進行數據格式化,最終把頁面呈現給用戶。

Figure 3 Improved MVC architecture sequence diagram

4 改進MVC設計模式的應用

以下給出基于改進MVC設計模式的質量異議換貨系統在某大型鋼鐵企業辦公自動化系統中的應用實例。系統以Windows Server 2003作為服務器端,Visual Studio 2008和Microsoft SQL Server 2008作為開發工具,使用了ASP.NET、ADO.NET、Ajax和SOAOffice中間件等開發技術進行系統開發。

4.1 系統流程設計

作為企業辦公自動化系統的一部分,質量異議換貨系統主要用來管理企業中產品由于質量問題產生的換貨流程,并對換貨流程進行全程的監控。系統流程如圖4所示。

首先,作為發起人,技術質量科的質量員提出換貨處理意見并填寫換貨處理單,由質量科領導及廠部領導審核;審核通過后,生產科科長安排科員發起換貨指示;生產科科員根據實際換貨處理情況判定是否需要原料車間參與換貨流程,若需要則同時通知原料車間及產品管理室,否則只通知產品管理室;原料車間及產品管理室負責人對換貨處理意見進行回復,并由生產科科員進行審核;生產科科員對兩個部門的回復進行審核,若同時通過兩個回復則流程繼續,否則回退給相應部門重新處理;生產科科長對換貨流程進行結案后,由技術質量員填寫考核意見,交由廠部領導審核,通過后最終由綜合科對換貨處理單進行歸檔,方便各部門用戶對換貨處理單的查詢。

Figure 4 Flow diagram of quality objection replacement

4.2 系統框架設計

質量異議換貨系統的核心是換貨處理單的流轉。傳統的開發方式一般使用硬編碼并結合COM組件調用Office來實現表單功能,導致系統編碼復雜,容易出現Office死進程等缺陷。使用改進的MVC設計模式,并結合SOAOffice中間件和Ajax技術來進行系統設計,能有效解決以上問題。系統的總體框架如圖5所示。

Figure 5 System architecture

SOAOffice中間件是Office中間件的一種,提供簡潔的調用接口供應用程序訪問控制Office文檔及其內容[10]。控制器通過調用SOAOffice的視圖組件打開Excel格式的換貨處理單模板并在視圖中顯示。同時,SOAOffice把原本要在服務器端運行的Office運算量交給了客戶機,消除了服務器端運行Office的風險。在系統中,業務邏輯和訪問服務主要在服務器端處理,通過SOAOffice數據組件,控制器調用模型在服務器端的方法或服務,將用戶輸入的數據批量導入數據庫,從而避免了數據的重復錄入,提高了數據存取的效率。

4.3 改進MVC設計模式應用評價

分別使用傳統MVC設計模式和改進MVC設計模式對質量異議換貨系統中核心模塊進行開發,統計出各自代碼復用情況,如表1所示。中間件技術在改進MVC中的使用,使系統開發過程中可復用的代碼顯著增加,同時降低了代碼總行數,提高了系統的代碼復用率。

Table 1 Comparative table of code reuse situation表1 代碼復用情況對比表

5 結束語

MVC設計模式在目前是一種應用比較普遍的設計模式,本文針對傳統MVC設計模式存在的缺陷,提出一種新的融合MVC的設計思想、頁面異步刷新技術和中間件技術優點的模式,并成功地將此種架構模式應用于企業質量異議換貨系統的架構設計中。項目實踐表明該設計模式提高了系統的開發效率和代碼的可復用率,并且降低了各層間的耦合性,為其他具有同種結構的應用系統的研發提供了一定的參考。

[1] Han Hong-bang. The design of online document signing system based on .NET[J]. Technology Bulletin of Science and Technology,2012,28(12):107-109.(in Chinese)

[2] Zhao Wei,Wang Zhi-hua,Zhou Bing. Novel architecture pattern based on .NET and MVC[J]. Computer Engineering and Design,2012,33(7):2646-2651.(in Chinese)

[3] Zhao Wei,Wang Zhi-hua,Zhou Bing. Design and implementation of e-ERP based on MVC[J]. Computer Applications and Software,2013,30(2):106-109.(in Chinese)

[4] Lin Qing,Zhu Cui-miao,Zheng Guang-cheng,et al. Study on MVC design pattern in ASP.NET[J]. Computer Engineering and Design,2008,29(1):106-109.(in Chinese)

[5] Wang Wen,Chen Zhi-wei,Wang Shu-feng. The design and realization of online editing text management system based on component technology[J]. Machine Design and Manufacturing Engineering,2012,41(23):89-91.(in Chinese)

[6] Liu Yi-xuan,Li Guang-yao,Liu Xiao-jing,et al. Design and implementation of online endorsement process based on ASP.NET [J]. Computer Engineering and Design,2010,31(3):525-528.(in Chinese)

[7] Tang Yong-rui ,Zhang Da-min. The research and design of the information system based on Ajax and MVC pattern[J]. Application of Electronic Technique,2014,40(2):128-130.(in Chinese)

[8] Yang Yan-lan, Jin Xiao-xue, Ye Hua. ASP.NET AJAX framework and its application in web development[J].Computer Applications and Software,2011,28(6):195-198.(in Chinese)

[9] Ni Jun-hong,Zhang Li,Zhang Miao,et al. Design and implementation of power communication alarm system based on Ajax and MVC[J]. Computer Applications and Software, 2012,30(8):226-227.(in Chinese)

[10] La Fen-hua,Chen Hong-xing,Li De-yu,et al. Contract generation and data extraction program for Web environment based on SOAOffice middleware[J]. Journal of Computer Applications,2012,32(S1):73-76.(in Chinese)

附中文參考文獻:

[1] 韓紅幫.基于.NET技術的網上公文簽收系統設計[J].科技通報,2012,28(12):107-109.

[2] 趙偉,王志華,周兵.基于.NET技術和MVC的新架構模式[J].計算機工程與設計,2012,33(7):2646-2651.

[3] 趙偉,王志華,周兵.基于MVC的e-ERP系統的設計與實現[J].計算機應用與軟件,2013,30(2):106-109.

[4] 林慶,朱翠苗,鄭廣成,等.基于ASP.NET的MVC設計模式的研究[J].計算機工程與設計,2008,29(1):106-109.

[5] 王文,陳志偉,王樹鋒.基于中間件的文檔在線編輯管理技術的實現[J].中國制造業信息化,2012,4(23):89-91.

[6] 劉宜軒,李光耀,劉曉靜,等.ASP.NET環境下的網上審批流程的設計及實現[J].計算機工程與設計,2010,31(3):525-528.

[7] 唐永瑞,張達敏.基于Ajax與MVC模式的信息系統的研究與設計[J].電子技術應用,2014,40(2):128-130.

[8] 仰燕蘭,金曉雪,葉樺.ASP.NET AJAX框架研究及其在Web開發中的應用[J].計算機應用與軟件,2011,28(6):195-198.

[9] 尼俊紅,張麗,張淼,等.基于Ajax和MVC的電力通信告警系統的設計實現[J].計算機應用與軟件,2012,30(8):226-227.

[10] 剌奮華,陳紅星,李德玉,等.Web環境下基于SOAOffice中間件的合同生成與數據抽取方案[J].計算機應用,2012,32(S1):73-76.

劉紅霞(1964-),女,江蘇江陰人,博士,副教授,研究方向為工業綜合自動化研究與實現。E-mail:lhx_cec@126.com

LIU Hong-xia,born in 1964,PhD,associate professor,her research interests include research and realization of integrated automation of industry.

Research and implementation of an improved MVC design pattern

LIU Hong-xia,LU Wen-di

(College of Computer Science and Technology,Nanjing Tech University,Nanjing 211816,China)

The traditional MVC design pattern on .NET platform has defects of defects of low data processing capability and low code reuse. Using the middleware and asynchronous refresh techniques, we propose an improved MVC design pattern. Based on the improved MVC, we design a quality objection replacement system for iron and steel enterprises. System operation indicates the improved MVC effectively enhances the robustness of the system, balances the coupling between layers and increases the code reuse rate and the efficiency of system development.

MVC;middleware;asynchronous refresh;quality objection replacement

1007-130X(2015)09-1688-04

2014-11-17;

2015-01-27

TP311.53

A

10.3969/j.issn.1007-130X.2015.09.015

通信地址:211816 江蘇省南京市南京工業大學電子與信息工程學院

Address:College of Computer Science and Technology,Nanjing Tech University,Nanjing 211816,Jiangsu,P.R.China

猜你喜歡
頁面用戶模型
大狗熊在睡覺
一半模型
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 国产亚洲精品97在线观看| 亚洲一区国色天香| 欧美日韩在线第一页| 伊人久久大线影院首页| 亚洲日韩国产精品综合在线观看| 伊人久久大线影院首页| 国产精品视频系列专区| 一区二区欧美日韩高清免费 | 欧美a在线看| 久久www视频| 亚洲乱亚洲乱妇24p| 制服丝袜无码每日更新| 亚洲视频欧美不卡| 伊人久综合| 欧美日在线观看| 美女毛片在线| 在线观看亚洲精品福利片| 欧美精品成人| 亚洲欧美综合精品久久成人网| 99视频全部免费| 国产在线拍偷自揄观看视频网站| 色综合久久88| 欧美劲爆第一页| 最新国语自产精品视频在| 91在线日韩在线播放| 国产JIZzJIzz视频全部免费| 91成人免费观看| 亚洲啪啪网| 国产成人AV综合久久| 第一区免费在线观看| 四虎永久在线精品影院| 欧洲欧美人成免费全部视频| 国产精品久久久久久搜索| 热久久综合这里只有精品电影| 国产成人免费手机在线观看视频 | 日本三级欧美三级| 亚亚洲乱码一二三四区| jizz亚洲高清在线观看| 玖玖免费视频在线观看| 日韩精品一区二区三区免费在线观看| 亚洲黄色成人| 久久黄色小视频| 久久这里只有精品2| 狠狠干综合| 午夜毛片福利| 91系列在线观看| 综合天天色| 久久semm亚洲国产| 日日拍夜夜操| 在线观看免费人成视频色快速| 19国产精品麻豆免费观看| 九九视频免费在线观看| 亚洲综合18p| 欧美日韩精品一区二区视频| 婷婷成人综合| 九月婷婷亚洲综合在线| 极品国产一区二区三区| 99在线免费播放| 国产成人av一区二区三区| 国产成人综合亚洲欧美在| 国产成人高清精品免费| 成·人免费午夜无码视频在线观看| 中文字幕色在线| 日韩区欧美区| 毛片网站免费在线观看| 国产噜噜噜视频在线观看| 欧美成人精品一级在线观看| 中文字幕人妻av一区二区| 国产午夜一级毛片| 玩两个丰满老熟女久久网| 成年人久久黄色网站| 欧美精品v欧洲精品| 99久久无色码中文字幕| 色呦呦手机在线精品| 精品福利视频网| 午夜无码一区二区三区| 国产福利大秀91| 天天干天天色综合网| 国产日韩欧美成人| 国产美女在线观看| 中文字幕日韩视频欧美一区| 国产一区二区色淫影院|