1. 程式人生 > >04 - springMVC三大元件配置詳解

04 - springMVC三大元件配置詳解

springMVC三大元件配置

概述

上篇分析了springMVC的架構流程,這篇對三大元件的配置檔案解讀一下。

1. springMVC預設載入元件

記得在springMVC入門小例項中,指定的springMVC並沒有新增這三大元件的配置資訊就可以使用這些元件, 僅僅配置了掃描@controler的註解, 為什麼? 是因為框架本身就有一個配置檔案,在我們沒有配置的時候會有預設的配置資訊,從而載入這些元件。
配置檔案的位置如下:
在這裡插入圖片描述

2.配置檔案解讀

開啟DispatcherServlet.properties檔案解讀三大元件總體如下:
在這裡插入圖片描述

  • HandlerMapping 處理器對映器:
    如上圖可以看到預設的有兩個
    1.org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping 是配置檔案式的, 目前使用很少,不去研究了。
    2.org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping 基於註解的方式。
    進入這裡類裡可以發現官方已經廢棄了
    在這裡插入圖片描述

as of Spring 3.2, in favor of
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping
翻譯:字spring3.2以後 , 就推薦使用RequestMappingHandlerMapping

處理器介面卡有三種方式分別是繼承父類,實現介面,和註解,
現在也是使用註解的方式。現在也是推薦使用RequestMappingHandlerAdapter

以上的兩種介面卡使用推薦的話需要在springmvc.xml配置檔案中新增配置, 有兩種方法
第一種 , 直接配置bean(不常使用)

 <!-- 處理器對映器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
<!-- 處理器介面卡 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>

第二種, 註解驅動 (常用)

 <mvc:annotation-driven />

3.配置檢視解析器

回顧入門例子裡的 , controller中的ModelAndView中setViewName中的值:
在這裡插入圖片描述
這個值 帶全路徑,並且還需要帶上字尾, 如果jsp資料夾下有很多頁面的話這樣寫起來豈不是會有很多的重複。 所以要考慮通用的配置,下邊就是配置檢視解析器。

 <!-- 檢視直譯器 -->
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        	<property name="prefix" value="/WEB-INF/jsp/"/>
        	<property name="suffix" value=".jsp"/>
        </bean>

注: 不管如何配置,這裡的字首和字尾要和ModelAndView或者返回的字串能拼湊成一個正確完整的路徑才可以。

配置好以上檢視解析器以後 ModelAndView中的setViewName就可以直接寫成如下:(目的就是簡化了配置)
在這裡插入圖片描述
進階需要一步一步來, 穩紮穩打! 下篇學習springMVC之引數繫結。
你堅持的這個過程也是在向目標走進的一個過程。