spring+springMVC在web.xml中的注册

2018-05-05  本文已影响75人  游牧族人
<!--指定spring bean位置-->
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
</context-param>

<!--设置ContextLoaderListener监听器-->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

<!--把一些不需要dispatcherServlet拦截的请求先拦截下来,若是不配置,dispatcher将拦截所有请求-->
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.css</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.swf</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.gif</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.jpg</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.png</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.js</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.html</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.xml</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.json</url-pattern>  
    </servlet-mapping>  
    <servlet-mapping>  
        <servlet-name>default</servlet-name>  
        <url-pattern>*.map</url-pattern>  
    </servlet-mapping> 

   <!--注册dispatcherServlet-->
    <servlet>
        <servlet-name>DispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
  1. 使用spring+springMVC进行web开发需要两个配置文件applicationContext.xml和[servlet-name]-servlet.xml,其中applicationContext.xml是系统级别的配置文件,他的作用范围是系统上下文,因此需要在web.xml的<context-param>标签中定义,而[servlet-name]-servlet.xml只是controller级别的配置,对应的是控制层上下文。因此所有与controller层有关的配置都要放到[servlet-name]-servlet.xml中进行管理。
  2. 在DispatcherServlet初始化时,若不指定servlet对应的contextConfigLocation位置,springMVC会自动从WEB-INF下寻找对应的[servlet-name]-servlet.xml配置文件进行DispatcherServlet的加载。
  3. web.xml是通过<context-param>和ContextLoaderListener监听器启动spring的,springMVC是通过加载DispatcherServlet实现的。
上一篇 下一篇

猜你喜欢

热点阅读