中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringMVC的五大核心組件怎么使用

發布時間:2023-03-27 10:21:49 來源:億速云 閱讀:114 作者:iii 欄目:開發技術

這篇文章主要介紹了SpringMVC的五大核心組件怎么使用的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇SpringMVC的五大核心組件怎么使用文章都會有所收獲,下面我們一起來看看吧。

    SpringMVC的五大核心組件

    • DispatcherServlet -前端控制器,用于統一接收請求并分發,組織處理請求的流程

    • HandlerMapping -映射請求路徑與處理請求的控制器

    • Controller -由開發人員創建的,實際處理請求的控制器

    • ModelAndView -Controllera組件處理完請求后得到的結果,由數據與視圖名稱組成

    • ViewResolver -視圖解析器,可根據視圖名稱(由ModelAndView:返回)確定需要使用的視圖組件

    SpringMVC的五大核心組件怎么使用

    一、DispatcherServlet

    DispatcherServlet:通常稱之為“前端控制器”,用于統一接收請求并分發,組織處理請求的流程        

    -如果是使用web.xml文件配置項目的Web環境的項目,需要顯式的在web.xml配置它,例如映射的請求路徑,并確保它是Web容器(例如Tomcat)在啟動時就初始化的,并在初始化時會加載Spring環境        

    -如果是使用Spring注解來配置Spring MVC環境的項目,則不需要直接配置它,而是通過自定義一個AbstractAnnotationConfigDispatcherServletlnitializer的子類來間接的配置,例如配置它映射的請求路徑        

    -如果是使用Spring Booti框架的Web項目,你甚至可以不需要知道它的存在,默認映射的請求路徑是/*,當然,如果認為有必要的話,也可以配置為其它值

    二、HandlerMapping

    HandlerMapping:它是一個接口,Spring MVC框架內置了簡單的實現類:

    SimpleUrlHandlerMapping,用于映射請求路徑與處理請求的控制器,但是,在實際應用中,并不會直接使用這個實現,而是使用@RequestMapping注解,或進階的@PostMapping、@DeleteMapping、@PutMapping、@GetMapping等注解,直接配置請求路徑與處理請求的方法的映射關系

    三、Controller

    Controller:是實際處理請求的控制器        

    是開發者自行編寫的,通常有多個,一般根據需要處理的請求所涉及的核心數據類型來區分,例如與用戶相關的請求則創建UserController,與訂單相關的請求則創建OrderController…        

    這些類必須放在組件掃描的包或其子孫包下,并添加@Controller注解,或添加@RestController注解,由于主流的開發模式是服務器端向客戶端響應正文,通常使用的是@RestController        

    一般還會在這些類的聲明之前添加@RequestMapping注解,以統一設計URL中的前綴路徑        

    每個控制器類中將有若干個處理請求的方法

    四、ModelAndView

    ModelAndView:Controller組件處理完請求后得到的結果,由數據與視圖名稱組成        

    在實際開發中,由于Spring MVC提供了更加便捷的API,通常并不直接使用這種類型作為方法的返回值,當需要轉發數據時,可以在方法的參數列表中添加ModelMap對象用于封裝需要轉發的數據,并使用String類型的返回值表示視圖名稱,如果需要重定向,則返回以redirect:作為前綴的Stringl即可        

    主流的開發模式是服務器端向客戶端響應正文,完全不需要使用該類型的對象

    五、ViewResolver

    ViewResolver:視圖解析器,可根據視圖名稱確定需要使用的視圖組件        

    Spring MVC框架內置了簡單的實現類:InternalResourceViewResolver,當使用JSP文件作為視圖時將使用它,主要配置prefix7和suffix這2個屬性,SpringMVC框架會將orefixl的值、控制器返回的視圖名稱、suffix的值拼接起來,以確定JSP文件的位置并使用        

    使用Thymeleaf的模版頁面作為視圖組件時,則配置ThymeleafViewResolver,配置思想大致相當,但需要另外配置Thymeleaf的模版引擎和模版解析器        

    主流的開發模式是服務器端向客戶端響應正文,完全不需要使用該組件

    SpringMVC框架的核心組件及其流程圖

    SpringMVC框架

    1.作用:解決了V-C交互問題,也就是試圖與控制器的交互問題。

    在原生的Java EE技術中,使用Servlet作為項目中的控制器,用于接收用戶的請求,并給予響應結果。

    這種做法最大的問題在于:每個Servlet對應一個請求路徑,例如:LoginServlet處理login.do的請求,而RegisterServlet處理register.do的請求,所以,會導致Servlet數量太多,不便于管理(無論是從源文件的數量,還是從配置文件的內容),且對象太對而占用大量的內存空間的問題,并且,在請求的處理過程中,還存在許多操作不簡單的做法!

    2.SpringMVC核心組件及其流程圖。

    SpringMVC的五大核心組件怎么使用

    1.DispatcherServlet:前端控制器,負責接收所配置的所有請求(假設配置為*.do,則它將接收所有以.do為后綴的請求),并負責分發這些請求;

    2.HandlerMapping:記錄了請求路徑與處理請求的Controller或其方法的對應關系;

    3.Controller:控制器,負責處理具體的請求,每個項目中可能有若干個Controller組件,每個Controller組件中可以有若干個處理請求的方法;

    4.ModelAndView:控制器處理完請求后得到的結果,該結果可以包含數據與視圖名稱;

    5.ViewResovler:視圖解析器,可以根據視圖名稱來確定具體的視圖組件。 

    關于“SpringMVC的五大核心組件怎么使用”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“SpringMVC的五大核心組件怎么使用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    双牌县| 白河县| 鄄城县| 长葛市| 客服| 景德镇市| 南丰县| 集安市| 铜鼓县| 马鞍山市| 富锦市| 靖边县| 余江县| 顺义区| 老河口市| 木兰县| 扶绥县| 扎鲁特旗| 三亚市| 连平县| 东丰县| 虞城县| 汉中市| 察哈| 金乡县| 商城县| 古蔺县| 台东县| 新平| 渭南市| 南川市| 石城县| 偏关县| 棋牌| 衡东县| 六安市| 札达县| 蕉岭县| 阜南县| 资中县| 大兴区|