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

淺析struts2和springMVC的異同

2017-12-29 10:55:47陳張成都師范學院
數碼世界 2017年4期

陳張 成都師范學院

淺析struts2和springMVC的異同

陳張 成都師范學院

struts2和springMVC都是java web開發比較主流的框架,目前企業中使用springMvc的比例已經遠遠超過Struts2,那么兩者到底有什么區別,是很多初學者比較關注的問題。

WEB框架 struts2 springMVC

1 springMVC簡介

spring MVC屬于SpringFrameWork的后續產品,已經融合在Spring Web Flow里面。Spring框架提供了構建Web應用程序的全功能MVC模塊。Spring MVC分離了控制器、模型對象、分派器以及處理程序對象的角色,這種分離讓它們更容易進行定制。

2 springMVC的執行流程

第一,用戶向服務器發送請求,請求被Spring前端控制Servelt DispatcherServlet捕獲;

第二,DispatcherServlet對請求URL進行解析,得到請求資源標識符。然后根據該URI,調用HandlerMapping獲得該Handler配置的所有相關的對象,最后以HandlerExecutionChain對象的形式返回;

第三,DispatcherServlet根據獲得的Handler,選擇一個合適的HandlerAdapter;

第四,提取Request中的模型數據,填充Handler入參,開始執行Handler。在填充Handler的入參過程中,根據你的配置,Spring將幫你做一些額外的工作:

HttpMessageConveter:將請求消息轉換成一個對象,將對象轉換為指定的響應信息;

第五,Handler執行完成后,向DispatcherServlet返回一個ModelAndView對象;

第六,根據返回的Model AndView,選擇一個適合的ViewResolver(必須是已經注冊到Spring容器中的ViewResolver)返回給DispatcherServlet;

第七,ViewResolver結合Model和View,來渲染視圖;

第八,將渲染結果返回給客戶端。

3 struts2執行流程

一個請求在Struts2框架中的處理大概分為以下幾個步驟:

第一,客戶端瀏覽器發送請求;

第二,這個請求經過一系列的過濾器(這些過濾器中有一個叫做ActionContextCleanUp的可選過濾器,這個過濾器對于Struts2和其他框架的集成很有幫助);

第三,接著FilterDispatcher被調用,FilterDispatcher詢問ActionMapper來決定這個請求是否需要調用某個Action;

第四,如果ActionMapper決定需要調用某個Action,FilterDispatcher把請求的處理交給ActionProxy;

第五,ActionProxy通過Configuration Manager詢問框架的配置文件,找到需要調用的Action類;

第六,ActionProxy創建一個ActionInvocation的實例;

第七,ActionInvocation實例使用命名模式來調用,在調用Action的過程前后,涉及到相關攔截器的調用;

第八,一旦Action執行完畢,ActionInvocation負責根據struts.xml中的配置找到對應的返回結果。

4 struts2和springMVC的比較

①核心控制器:對于使用過mvc框架的人來說這個詞應該不會陌生,核心控制器的主要用途是處理所有的請求,然后對那些特殊的請求統一的進行處理,spring mvc核心控制器是Servlet,而Struts2是Filter。

②控制器實例:Spring Mvc會比Struts快一些(理論上)。

③管理方式:大部分的公司的核心架構中,就會使用到spring,而spring mvc又是spring中的一個模塊,所以spring對于spring mvc的控制器管理更加簡單方便。

④參數傳遞:Struts2中自身提供多種參數接受,其實都是通過進行傳遞和賦值,而SpringMvc是通過方法的參數進行接收。

⑤學習難度:Struts更加很多新的技術點,比如攔截器、值棧及OGNL表達式,學習成本較高,spring mvc比較簡單,很較少的時間都能上手。

總體來說,springMVC對初學者來說相比較struts2更加容易上手,與spring的集成更加流暢和方便。

[1]王冠宇,趙冬生.基于J2EE下的JSF與Struts框架比較分析[J].微機發展,2005年12期

[2]陳平.基于Spring的輕量級Web框架的研究與設計[D].江蘇大學,2005年

[3]孫衛琴.精通struts[M].電子工業出版社,2004年8月50-70

[4]曾云飛.基于Struts框架的電子政務研究和實現[M].東北大學出版社,2005

陳張,成都師范學院,計算機科學與技術,本科。

主站蜘蛛池模板: 欧美亚洲第一页| 国产精品永久免费嫩草研究院| 中文字幕久久波多野结衣| 中文无码毛片又爽又刺激| 久久精品国产91久久综合麻豆自制| 国产亚洲欧美在线中文bt天堂| 日韩大乳视频中文字幕| 午夜国产精品视频黄| 在线观看视频一区二区| 视频二区中文无码| 亚洲香蕉久久| 色精品视频| 亚洲天堂高清| 欧美午夜小视频| 亚洲婷婷六月| 亚洲一欧洲中文字幕在线| 亚洲第一黄色网址| 久久久久亚洲精品无码网站| 91久久国产热精品免费| 国产精品第页| 国产99久久亚洲综合精品西瓜tv| 亚洲日韩高清无码| 欧美爱爱网| 精品一区二区三区自慰喷水| 精品视频一区二区三区在线播| 成人综合在线观看| 欧美亚洲网| 精品久久高清| 日本妇乱子伦视频| 亚洲永久视频| 日韩乱码免费一区二区三区| 嫩草影院在线观看精品视频| 亚洲视频无码| 国语少妇高潮| 漂亮人妻被中出中文字幕久久| 久久综合丝袜日本网| 在线观看国产黄色| 97视频精品全国免费观看| 国产精品成人免费综合| 国产九九精品视频| yjizz国产在线视频网| 亚洲天堂色色人体| 色综合a怡红院怡红院首页| 国产成人欧美| 2019国产在线| 亚洲视频影院| 香蕉久久国产超碰青草| 国产成人午夜福利免费无码r| 国产男女免费完整版视频| 91综合色区亚洲熟妇p| 国产人前露出系列视频| 国产手机在线小视频免费观看 | 99成人在线观看| 91视频青青草| 亚洲日韩高清在线亚洲专区| 国产欧美亚洲精品第3页在线| 精品91在线| 国产情精品嫩草影院88av| 亚洲乱码在线播放| 欧美成人手机在线视频| 亚洲日本www| 亚洲无码精彩视频在线观看| 亚洲va在线∨a天堂va欧美va| 免费啪啪网址| 日本不卡在线播放| 少妇人妻无码首页| 亚洲成人网在线播放| 日本一区中文字幕最新在线| 欧美h在线观看| 无码AV日韩一二三区| 亚洲视频二| 伊人久久久大香线蕉综合直播| 四虎永久免费地址| 国产手机在线ΑⅤ片无码观看| 亚洲人成日本在线观看| 精品国产Av电影无码久久久 | 亚洲天堂777| 亚洲无码高清一区二区| 好久久免费视频高清| 在线观看国产小视频| 国产美女叼嘿视频免费看| 日本欧美视频在线观看|