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

基于移動互聯WEB開發的MVC模式研究

2019-10-21 20:25:28孫林于海春李星宇
科技風 2019年23期

孫林 于海春 李星宇

摘 要:隨著網絡信息技術的發展,基于B/S的web分布式應用體系架構已經被廣泛地應用。MVC設計模式的出現,將模型層、視圖層、控制層進行分離,極大的降低了各組件之間的耦合度,提高了代碼的重用性可維護性。文章討論了SpringMVC等后端技術框架,B/S三層技術架構模式等架構思想。同時采用層次化、組件化和面向對象的設計思想,盡量降低不同功能模塊之間的耦合粒度,以保證系統的可擴展性。

關鍵詞:MVC模式;SpringMVC;軟件架構;WEB開發

1 web應用技術的起源和發展前景

Web應用發展的集中在分布式計算領域,Web 系統從開發出現以來,就以成本低、推廣易、靈活性高為優勢,在計算機領域得到了迅速的發展。當前,Web 系統已經成功的應用社會生活中的方方面面,這也成功的推動了IT 浪潮的發展,在看到IT技術企業所展現的巨大經濟利潤之后,對于Web 系統的開發更為迫切。

為了解決一類重復出現的問題,從而使代碼不斷使用形成一套重用的解決方案,人們引入了設計模式的概念。對于軟件開發過程中產生的冗余和重復的代碼,我們通過應用例如:單例模式、觀察者模式、工廠模式等設計模式的思想,會在開發中提供一套全新的解決方案,使代碼達到高內聚、松耦合的效果。

2 MVC三層架構分析

MVC全名是Model View Controller,分別代表著模型層,視圖層和控制層。MVC和軟件開發的三層架構有著極為密切的聯系,在web項目開發中使用三層架構的總體布局,具體采用MVC模式的軟件設計風格,通過SSM/SSH(Spring,SpringMVC,Mybatis/Hibernate)等框架進行具體業務的分析和搭建完成整個項目的提交。

在SpringMVC框架中,DispatcherServlet(前端控制器)占據核心位置,一方面負責接收客戶端用戶的請求,另一方面它會與HandlerMapping(處理器映射器)進行交互,此過程中會根據XML配置和JAVA類中的注解產生執行結果,之后由后端控制器與處理器映射器進行交互,將執行結果的ModelAndView(模型和視圖)回拋給前端控制器進行解析和渲染視圖產生具體的View(視圖)返回給客戶端用戶。整個流程充分應用各個組件的作用,工程師只需要進行View視圖的渲染和處理器Handler的開發,極大地減少了開發過程中的代碼量,降低了代碼的耦合度,各個模塊的業務之間相分工明確、相互聯系,使得開發周期大大縮減,推動了C/S(客戶端/服務端)架構的迅速發展。

2.1 視圖層(JSP)

View視圖用來渲染模型。視圖層是用戶直接看到的Web應用的界面,它為用戶提供了一個可視化的界面和操作空間,也是用戶與Web應用進行直接交互的渠道。在JavaWeb中,視圖層不僅支持HTML、XML、XHTML等基礎標記語言,還支持JavaScript、Bootstrap等腳本、框架語言,甚至還可以支持JSP通過后臺動態生成頁面,作為實現真正的用戶交互功能的媒介,視圖層使得MVC架構的Web應用功能更加強大豐富。

2.2 模型層(DAO)

Model(模型),表示應用數據和業務規則。模型層是真正用來實現各項功能的模塊,負責處理業務邏輯和業務規則,例如連接數據庫進行增刪改查操(DAO)、動態生成頁面等交互功能。在使用DAO構建模型層的同時,還可以配合緩沖池、緩存等技術手段來降低數據庫的訪問量,從而提升MVC框架應用的穩定性和并發查詢能力。

2.3 控制器(Servlet)

Controller(控制器)的核心功能主要分為兩部分。一方面解釋客戶端界面的輸入,調用Model模型中的方法,另一方面通過將模型數據和執行結果填充至視圖中,進而把View視圖顯示給用戶,這一過程主要由Servlet完成。在SpringMVC中,對于客戶端提交的請求經過DispatcherServlet分發之后到達控制器,在業務處理層處理之后會將結果進行封裝,從而產生一個Model,然后經過View視圖層交互之后就會將Model進行展示。因此當接收到用戶的請求時,它只是決定調用哪些Model層和View層去進行處理和返回執行結果,但是控制器本身不會有任何輸入和輸出。

2.4 MVC架構優勢分析

(1)可以降低各模塊之間的耦合度;

(2)實現各層之間的代碼復用;

(3)有利于實現代碼的標準化;

(4)有利于系統的動態模塊化更新;

(5)便于團隊分工開發。

3 舊模式開發缺點

不使用框架進行Web應用開發會造成以下幾個缺點。

(1)HTML和JAVA代碼同時在JSP頁面中進行編寫,增加開發周期,降低了代碼的可讀性;

(2)在實現各模塊的業務邏輯時,由于代碼復雜混亂,對團隊的分工開發造成困難;

(3)后期對系統進行運維和功能擴展時會非常麻煩。例如在JSP頁面進行數據庫連接和操作,如果需要對數據庫進行任何修改,都必須打開所有操作數據庫的JSP頁面進行相應的修改,當頁面非常多的時候,工作量相當大;

(4)系統不容易調試,由于HTML、Java、JavaScript都混合在一起,而Java語言的運行需要每次修改后都重新編譯運行,因此必須要啟動服務器并調用 JSP頁面才能查看運行效果。在進行大型項目開發時,啟動速度慢,效率低下。

當Web應用程序功能十分簡單時,如果再遵循MVC框架進行開發,那么就會導致原本的簡單系統反而變得復雜、冗余,會徒增多余操作,從而降低簡單系統的運行效率。

4 MVC架構性能提升

如果僅使用簡單的MVC架構進行開發,毫無疑問,這個Web應用的性能也是有瓶頸的,受到服務器內存、CPU等性能和并發量等條件的約束。

4.1 靜態緩存

靜態緩存是指將MVC框架中的視圖層中的HTML、JSP中的HTML、JavaScript、圖片、視頻等靜態文件和資源通過緩存、增加響應方式等方法,降低Web應用和服務器的壓力,從而提高系統性能。

(1)CDN技術。CDN全稱是ContentDeliveryNetwork,即內容分發網絡,通過部署邊緣鏡像服務器,智能調度算法等操作,使用戶就近訪問靜態資源,降低網絡擁塞,提升主站系統性能。

(2)服務器內存緩存。通過Varnish,實現服務器內存緩存靜態資源功能,效率高。

(3)Nginx內存緩存。通過修改Nginx配置文件,實現Nginx的內存緩存靜態資源功能,靈活性和效率都很高。

4.2 動態緩存

動態緩存是指將MVC中需要經過模型層處理后的動態生成的資源進行緩存。

適用條件:

(1)此動態資源被請求數量多;

(2)此動態資源被修改次數少;

(3)此動態資源對即時性要求低。

例如在購物網站的場景中,每個店家的商品資源就可以使用動態緩存技術,從而提升性能和穩定性,抵抗高并發。每個店家的商品可能在同一時間內被多次請求查看,將此動態資源放入動態緩存中,于是每次請求都不需要查詢數據庫,避免了大量的數據庫的IO操作。當有商品被修改時,只需要重新請求一次數據庫,再做緩存即可。

5 結論

綜上所述,在JavaEE等web項目開發中,MVC設計模式的應用在很大程度上減小了不同程序間的差異性,將錯亂復雜的程序設計變得更容易,改善程序的理解性的同時增強程序的可維護性,彌補目前程序開發技術的不足,給互聯網絡注入新的生機和活力。

參考文獻:

[1]閆帥領,徐蕾,趙亮,蘇冬梅.基于MVC模式的信息系統開發模式研究[J].科技與創新,2018(08):22-23.

[2]張雪敏.淺議MVC設計模式在JavaWeb中的作用[J].科技風,2018(22):58-59.

[3]于春娜,王晨升,楊光,郭世龍,劉豐.Web前端MVC框架的意義研究[J].產業與科技論壇,2014,13(01):52-53.

作者簡介:孫林(1998-),男,專業方向:電子信息工程。

主站蜘蛛池模板: 欧美日韩国产精品va| 精品91视频| 国产va在线观看免费| 22sihu国产精品视频影视资讯| 欧美国产视频| 久久这里只有精品66| 精品少妇人妻无码久久| 亚洲首页在线观看| 19国产精品麻豆免费观看| 日本在线视频免费| 秋霞国产在线| 久久久波多野结衣av一区二区| 99热这里只有精品在线播放| 亚洲欧美人成人让影院| 中字无码精油按摩中出视频| 亚洲大学生视频在线播放| 亚洲福利一区二区三区| 欧美成人A视频| 色播五月婷婷| 欧美日韩在线成人| 国产在线一区视频| а∨天堂一区中文字幕| 亚洲精品国产精品乱码不卞| 人妻91无码色偷偷色噜噜噜| 伊人国产无码高清视频| 国产精品无码AⅤ在线观看播放| 最新国产麻豆aⅴ精品无| 在线免费亚洲无码视频| 美女被操91视频| 青青草原国产| 午夜精品区| 91伊人国产| 中国一级毛片免费观看| 欧美日韩激情| 内射人妻无套中出无码| jizz亚洲高清在线观看| 青青热久麻豆精品视频在线观看| 国产va在线观看免费| 午夜无码一区二区三区| 午夜性刺激在线观看免费| 国产成人在线无码免费视频| 国产91精选在线观看| 国产精品亚洲综合久久小说| 国产99欧美精品久久精品久久| 毛片网站在线看| 国产高清毛片| 广东一级毛片| 国产亚洲精品va在线| 久久综合丝袜日本网| 青青草91视频| 色老二精品视频在线观看| 久草国产在线观看| a级高清毛片| 国产精品福利导航| 一本综合久久| 久久精品国产精品一区二区| 亚洲成人网在线观看| 免费在线播放毛片| a天堂视频| 国产精品精品视频| 国产极品粉嫩小泬免费看| 高清不卡毛片| 色偷偷男人的天堂亚洲av| 国产精品污视频| 国产精品粉嫩| 国产精品一区不卡| 亚洲侵犯无码网址在线观看| 99热这里只有精品免费国产| 欧美视频在线不卡| 国产成人一区二区| 亚洲一区无码在线| 亚洲AV一二三区无码AV蜜桃| 夜夜高潮夜夜爽国产伦精品| 人与鲁专区| 亚洲国产综合精品一区| 国产精品第页| 99精品在线视频观看| 国产精品任我爽爆在线播放6080| 91精品久久久无码中文字幕vr| 国产毛片高清一级国语| 欧美综合区自拍亚洲综合天堂| 亚洲国产成人超福利久久精品|