zoukankan      html  css  js  c++  java
  • spring MVC学习(一)---前端控制器

    1.spring MVC中的前段控制器就是DsipatcherServlet,它在spring MVC框架中的结构图如下:

    image

    2.DispatcherServlet其实就是一个Servlet,它继承了HttpServlet这个抽象类。

    先来看下该类在的位置:

    image

    为了使用它,你需要在你的web应用程序中的web.xml中配置一下,配置如下:

    <servlet>
            <servlet-name>dispatcher</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value></param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>dispatcher</servlet-name>
            <url-pattern>/example/*</url-pattern>
        </servlet-mapping>

    这样配置后,在你应用程序中所有请求中带/example的都会被DispatcherServlet拦截到。

    对于3.0++的容器,还有另外一种配置方式,那就是用代码方式代替:

    public class MyWebApplicationInitialzer implements WebApplicationInitializer {
    
        public void onStartup(ServletContext servletContext) throws ServletException {
            // TODO Auto-generated method stub
            ServletRegistration.Dynamic regist = 
                    servletContext.addServlet("dispatcher", new DispatcherServlet());
            regist.setLoadOnStartup(1);
            regist.addMapping("/example/*");
            
        }
    
    }

    设置容器加载时就启动,设置映射的路径。

    3.每一个DispatcherServlet都有自己的上下文环境(WebApplicationContext),它继承了些上下文环境中的bean,而且可以根据条件自己重写。

    下面就是一个继承图解:

    image

    4.在web.xml中配置好DispatcherServlet后,容器启动时回去WEB-INF文件夹下去找(默认[servlet-name]-servlet.xml)dispatcherServlet-servlet.xml,解析文件初始化里面中的bean等。

    5.在实际的应用中我们一般不使用这种默认的配置,你只需要在web.xml中配置下面的文件就可,下面给一个例子,把param-value换成你自定义就可:

    <context-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/root-context.xml</param-value>
        </context-param>
    <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
        </listener>
    <servlet>
            <servlet-name>dispatcher</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value></param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>dispatcher</servlet-name>
            <url-pattern>/*</url-pattern>
        </servlet-mapping>

    6.好了,一个通用简单spring MVC基本配置就完成了。

     

  • 相关阅读:
    形象理解ERP(转)
    禁用windows server 2008 域密码复杂性要求策略
    How to adding find,filter,remove filter on display method Form
    Windows Server 2008 R2激活工具
    How to using bat command running VS development SSRS report
    Creating Your First Mac AppGetting Started
    Creating Your First Mac AppAdding a Track Object 添加一个 Track 对象
    Creating Your First Mac AppImplementing Action Methods 实现动作方法
    Creating Your First Mac AppReviewing the Code 审查代码
    Creating Your First Mac AppConfiguring the window 设置窗口
  • 原文地址:https://www.cnblogs.com/haoke/p/4993273.html
Copyright © 2011-2022 走看看