SpringMVC简介以及DispatcherServlet

一、SpringMVC简介

SpringMVC:Spring框架提供的构建web应用程序的全功能MVC模块,SpringMVC框架提供了一个DispatcherServlet作用前端控制器来分派请求。

二、SpringMVC 的DispatcherServlet

         在许多的MVC框架中,都有一个用于调度控制的servlet,SpringMVC提供org.springframework.web.servlet.DispatcherServlet的Servlet充当前端控制器,所有的请求驱动都围绕这个DispatcherServlet来分派请求。

DispatcherServlet是一个Servlet(继承自HttpServlet基类),因此使用时需要把它配置在web.xml中,如下

<servlet>
        <servlet-name>springmvc</servlet-name>
        <!-- servlet对应的java类 -->
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- 当前servlet的参数信息 -->
        <init-param>
        <!-- contextConfigLocation是参数名称,该参数值包含SpringMVC的配置文件路径 -->
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring-mvc.xml</param-value>
        </init-param>
        <!-- 在web应用启动时立即加载Servlet -->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <!-- Servlet映射说明 -->
    <servlet-mapping>
        <!-- 请求对应的Servlet的名称 -->
        <servlet-name>springmvc</servlet-name>
        <!-- 监听当前域的所有请求 -->
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>

以上配置了一个DispatcherServlet,该servlet在Web应用程序启动时立即加载,DispatcherServlet加载时会需要一个SpringMVC的配置文件spring-mvc.xml(可以放在任何地方)

<param-name>的值contextConfigLocation表示参数名称, <param-value>的值是配置文件的路径和名称。

DispatcherServlet会查找配置文件路径,解析该文件内容并根据文件配置信息创建一个WebAppicationContext容器对象,也称为上下文环境。

WebAppicationContext继承自AppicationContext容器,它的初始化方式和BeanFactory、AppicationContext有所区别,

因为WebAppicationContext需要ServletContext实例,它必须在拥有Web容器的前提下才能完成启动Spring Web应用上下文的工作。

有了WebAppicationContext容器,就可以使用Sping的IOC 和AOP 等功能。

 

 

参考书目:《Spring+MyBatis企业应用实战》疯狂软件编著,电子工业出版社。

 

posted @ 2018-04-27 15:47  锅锅7533  阅读(68)  评论(0)    收藏  举报