久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

深入理解springMVC

 春和秋榮 2020-03-05

什么是spring MVC

Spring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,,已經(jīng)融合在Spring Web Flow里面。Spring 框架提供了構(gòu)建 Web 應(yīng)用程序的全功能 MVC 模塊,。使用 Spring 可插入的 MVC 架構(gòu),,從而在使用Spring進行WEB開發(fā)時,可以選擇使用Spring的SpringMVC框架或集成其他MVC開發(fā)框架,,如Struts1(現(xiàn)在一般不用),Struts2(一般老項目使用)等,。


spring mvc簡介

springmvc是spring的一個模塊,,提供web層解決方案(基于mvc設(shè)計架構(gòu))


采用springmvc的好處

  1. Spring MVC中提供一個DispatcherServlet, 無需額外開發(fā)。
  2. springMVC中使用基于xml的配置文件,,可以編輯,,無需重新編譯應(yīng)用程序。
  3. springMVC實例化控制器,并根據(jù)用戶輸入來構(gòu)造bean,。
  4. springMVC可以自動綁定用戶輸入,,并正確的轉(zhuǎn)換數(shù)據(jù)類型。例如,,springMVC能自動解析字 符串,,并設(shè)置float或decimal類型的屬性。
  5. springMVC可以檢驗用戶輸入,,若校驗不通過,,則重定向回輸入表單。輸入校驗是可選的,, 支持編碼方式以及聲明,。關(guān)于這一點,springMVC內(nèi)置了常見的校驗器,。
  6. springMVC是spring框架的一部分,。可以利用spring提供的其它能力,。
  7. springMVC支持國際化和本地化,,支持根據(jù)用戶區(qū)域顯示多國語言。
  8. springMVC支持多種視圖技術(shù),,最常見的JSP技術(shù)以及其它技術(shù)包括Velocity和FreeMarker,。

使用springMVC的優(yōu)勢

1、清晰的角色分配: 前段控制器(dispatcherServlet) , 請求到處理器映射(handlerMapping), 處理器適配器(HandlerAdapter), 視圖解析器(ViewResolver),,

處理器和頁面控制器(Controller),,驗證器(Validator),命令對象(Command),

表單對象(FromObject)

2,、分工明細

3,、和Spring框架無縫結(jié)合


spring mvc框架流程圖

SpringMvc整個的執(zhí)行流程:

1、發(fā)起請求到前端控制器(DispatcherServlet )

2,、前端控制器請求HandlerMapping查找Handler(可以根據(jù)xml,、注解進行查找)

3、處理器映射器HandlerMapping向前端控制器DispatcherServlet 返回Handler

4,、前端控制器DispatcherServlet 調(diào)用處理器適配器HandlerAdapter 執(zhí)行Handler

5,、處理器適配器HandlerAdapter 執(zhí)行Handler

6、Handler執(zhí)行完給處理器適配器返回ModelAndView

7,、處理器適配器向前端控制器返回ModelAndView (ModelAndView 是SpringMvc的底層對象 包括model和view)

8,、前端控制器請求視圖解析器去解析視圖

  根據(jù)邏輯視圖名解析成真正的視圖(jsp)

9、視圖解析器向前端控制器返回view

10,、前端控制器進行視圖渲染

  視圖渲染將模型數(shù)據(jù)(模型數(shù)據(jù)在ModelAndView對象中)填充到request域

11,、前端控制器向用戶響應(yīng)結(jié)果


組件: 1、前端控制器DispatcherServlet(不需要程序員開發(fā)) 作用接收請求,響應(yīng)結(jié)果,,相當(dāng)于轉(zhuǎn)發(fā)器,,中央處理器。 有了DispatcherServlet減少了其它組件之間的耦合度,。 2,、處理器映射器HandlerMapping(不需要程序員開發(fā))

作用:根據(jù)請求的url查找Handler

3、處理器適配器HandlerAdapter

作用:按照特定規(guī)則(HandlerAdapter要求的規(guī)則)去執(zhí)行Handler 4,、處理器Handler(需要程序員開發(fā)) 注意:編寫Handler時按照HandlerAdapter的要求去做,,這樣適配器才可以去正確執(zhí)行Handler 5、視圖解析器View resolver(不需要程序員開發(fā))

作用:進行視圖解析,,根據(jù)邏輯視圖名解析成真正的視圖(view)

6,、視圖View(需要程序員開發(fā)jsp)

View是一個接口,實現(xiàn)類支持不同的View類型(jsp,、freemarker,、pdf...)


springMVC常用注解

1. 在 struts-config.xml 文件中加入

<!--用于聲明GetPersonList。do請求委托Spring處理--><action path="/GetPersonList" scope="request"type="org.springframework.web.struts.DelegatingActionProxy"></action>

2.在 applicationContext.xml 文件中加入

<!-- 指定GetPersonList處理的代碼,,和注入實現(xiàn)業(yè)務(wù)的代碼 --><bean name="/GetPersonList" class="cn.base.GetPersonListAction"><property name="getPersonList" ref=" getPersonListServices"></property></bean>

3.cn.base.GetPersonListAction 實現(xiàn)請求響應(yīng)代碼

可以看出一次請求需求如此多的步驟,,在加上一個項目下來有很多這樣的請求響應(yīng),將給配置文件管理帶來很大的麻煩,。


經(jīng)過對 Spring 的深入應(yīng)用,, Spring 本身提供的 URL 請求控制,對其天然支持可以讓我們不需要 applicationContext.xml 再次聲明一次 URL 請求 Bean ,,即減少了 Struts 的聲明 URL ,,達到減少些繁瑣的配置。但只是少了一些而已,,同樣也會面臨著配置文件的管理問題,。

Spring 注解將給我們的工作帶來些輕松,利用反射機制原理出現(xiàn)的注解就是為了解決配置大量的配置問題,。請看下處理一次簡單的請求響應(yīng)代碼

@Controller --聲明控制器
@RequestMapping("/person") –聲明URL
public class PersonControl extends BaseController {
@Autowired –業(yè)務(wù)接口注入
private personServices personServices;/*** 獲得人員列表*@param request* @param response* @throws Exception*/
@RequestMapping(params = "method=geList") --即處理/person.do? method=geList方法
public void getnodeList(HttpServletRequest request,HttpServletResponse response) throws Exception { //處理請求//處理響應(yīng)}}

可以看出,,在代碼上加入注解可以省去我們上面說的多個配置文件的工作,達到簡便的 MVC 處理請求響應(yīng),。

再配上簡單的配置文件聲明,,即可輕松處理項目的全部請求控制工作。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多