圖解 SpringMVC 五大組件
來源:blog.csdn.net/wsdfym/article/details/91354997
是一個MVC架構(gòu),用來簡化基于MVC架構(gòu)的Web應(yīng)用開發(fā)。SpringMVC最重要的就是五大組件
DispatcherServlet HandleMapping Controller ModeAndView ViewResolver
下面一一介紹這五大控件
1.DispatcherServlet
這個控件是SpringMVC 最核心的一個控件,顧名思義其實他就是一個Servlet,是Spring寫好的一個Servlet
2.HandleMapping
控件標(biāo)明了路徑與Controller的對應(yīng)關(guān)系,不同的路徑訪問不同的Controller
3. Controller
用來處理業(yè)務(wù)邏輯的Java類
4. ModeAndView
Mode用來綁定處理后所得的數(shù)據(jù),View視圖名
5. ViewResolver
視圖解析器明確了視圖名與視圖對象的關(guān)系,是調(diào)用demo.jsp還是調(diào)用demo.html,以及明確視圖的位置
五大組件的關(guān)系

五大組件的位置關(guān)系
DispatcherServlet屬于servlet所以位于Tomcat等服務(wù)器容器中,而、HandleMapping ViewResolver 屬于Spring所以位于SpringMVC配置文件中,Contrlloer以及ModeView位于src文件中處理具體邏輯業(yè)務(wù)

下面說說五大組件的使用以及配置
配置DispatcherServlet
DispatcherServlet屬于Servlet所以配置在web.xml文件中。init-param為該Servlet啟動所需參數(shù)。DispatcherServlet會讀取初始化contextConfigLocation參數(shù)里面的值從而獲取spring的配置位置,然后自啟動容器
<servlet>
?????<servlet-name>springMvcservlet-name>
?????<servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
?????<init-param>
??????????<param-name>contextConfigLocationparam-name>
???????????<param-value>classpath:springmvc.xmlparam-value>
??????init-param>
??????<load-on-startup>1load-on-startup>
servlet>
<servlet-mapping>
????<servlet-name>springMvcservlet-name>
????<url-pattern>*.formurl-pattern>
servlet-mapping>

2. HandleMapping
mvc:annotation-driven 配置mvc注解掃描 可以用注解@RequestMapping(“url”)加在方法上簡化配置prop標(biāo)明路徑和XXController的關(guān)系
<mvc:annotation-driven/>
<bean?id="loginController"?class="包名+類名"/>
<bean?class="org.springframework.web.servlrt.handler.SimpleUrlHandlerMapping">
????<property?name="mappings">
????????<props>
????????????<prop?key="/login.form">loginControllerprop>
????????props>
????property>
bean>
3.Controller
處理getData.form該路徑的業(yè)務(wù)邏輯
@Controller
public?class?DataController?{
????@RequestMapping("getData.form")
????public?ModeAndView?hello(String?stationId)?{
????????System.out.println("hello");
????????return?new?ModeAndView("hello")
????}
}
4. ModeAndView
兩種ModeAndView的構(gòu)造方法,第一個視圖名,第二個需要綁定的數(shù)據(jù)
ModeAndView(String?viewName)
ModeAndView(String?viewName?,Map?data)
5. ViewResolver
前綴+視圖名+后綴=映射到頁面
<bean?class="org.springframework.web.servlet.view.InternalResour????ceViewResolver">
????<property?name="prefix"?value="/WEB-INF/"/>
????<property?name="suffix"?value=".html">property>
bean>
SpringMVC的部分知識圖:

程序汪資料鏈接
堪稱神級的Spring Boot手冊,從基礎(chǔ)入門到實戰(zhàn)進(jìn)階
臥槽!字節(jié)跳動《算法中文手冊》火了,完整版 PDF 開放下載!
臥槽!阿里大佬總結(jié)的《圖解Java》火了,完整版PDF開放下載!
字節(jié)跳動總結(jié)的設(shè)計模式 PDF 火了,完整版開放下載!
歡迎添加程序汪個人微信 itwang005? 進(jìn)粉絲群或圍觀朋友圈

