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-),男,專業方向:電子信息工程。

主站蜘蛛池模板: 久草视频一区| 欧美黑人欧美精品刺激| 伊人激情综合网| 国产女人喷水视频| 欧洲成人在线观看| 免费av一区二区三区在线| 99久久精品久久久久久婷婷| 性欧美在线| 秋霞午夜国产精品成人片| 国产精品区网红主播在线观看| 自拍欧美亚洲| 日韩精品无码免费一区二区三区 | 欧美a级在线| 午夜无码一区二区三区在线app| 一本无码在线观看| 亚洲国产精品久久久久秋霞影院| 久久频这里精品99香蕉久网址| 国产美女无遮挡免费视频| 久久女人网| 国产在线一区视频| 国产青榴视频在线观看网站| 毛片免费观看视频| 成人在线观看一区| 国产资源站| 先锋资源久久| 亚洲无码精品在线播放| 无码一区18禁| 欧美在线国产| 色哟哟精品无码网站在线播放视频| av在线无码浏览| 成人国产精品网站在线看| 亚洲精品欧美重口| 免费人成视网站在线不卡| 精品伊人久久久大香线蕉欧美| 欧美a在线| 国产亚洲欧美日韩在线观看一区二区| 成年人久久黄色网站| 国产精品网址在线观看你懂的| 天天色综网| 亚洲av无码人妻| 91亚洲精品第一| 四虎影视8848永久精品| 欧美不卡视频在线| 婷婷六月在线| 一本大道香蕉中文日本不卡高清二区| 91精品人妻互换| 亚洲美女AV免费一区| 青青草国产在线视频| 国产小视频a在线观看| 亚洲中字无码AV电影在线观看| 免费毛片视频| 毛片免费试看| 乱码国产乱码精品精在线播放| 亚洲人成影院午夜网站| a色毛片免费视频| 亚洲国产中文精品va在线播放| 婷婷亚洲视频| 成人在线不卡视频| 在线无码九区| 欧美福利在线播放| 久久国产免费观看| 色偷偷一区| 欧美a在线| 自拍中文字幕| 国产拍在线| 亚洲精品日产AⅤ| 国产成人无码Av在线播放无广告| 青草国产在线视频| 视频一区视频二区日韩专区| 好紧太爽了视频免费无码| 又黄又湿又爽的视频| 日韩人妻无码制服丝袜视频| 成人va亚洲va欧美天堂| 91美女视频在线| 欧美a√在线| 综合色88| 久久99热这里只有精品免费看| 99久久精品免费看国产电影| 国产精品香蕉在线| 露脸一二三区国语对白| 久久成人18免费| 欧美一区中文字幕|