• Spring MVC HandlerMapping


    http://www.cnblogs.com/tengyunhao/p/7658952.html

    http://www.cnblogs.com/tengyunhao/p/7518481.html

    Spring MVC中的 HandlerMapping 是请求到处理器映射,即请求的URL到Controller的映射,通过URL找到响应的Controlelr控制器。

    作用是根据当前请求的找到对应的Handler,并将Handler与一堆HandlerInterceptor(拦截器)封装到HandlerExceutionChain对象中。在HandlerMapping接口的内部只有一个方法,如下:

      HandlerExecutionChain getHandler(HttpServletRequest request)

    HandlerMapping 是由 DispatcherServlet 调用,DispatcherServlet 会从容器中取出所有HandlerMapping 实例并遍历,让 HandlerMapping 实例根据自己实现类的方式去尝试查找 Handler。

     

    三个HandlerMapping

    HandlerExecutionChain 对象

     ===================================================================

    三个HandlerMapping:

    1、RequestMappingHandlerMapping

    2、SimpleUrlHandlerMapping

    3、BeanNameUrlHandlerMapping

    RequestMappingHandlerMapping

    只需要在controller前加上@RequestMapping注解。

    web.xml配置

    Controller

     SimpleUrlHandlerMapping

    SimpleUrlHandlerMapping的Controller处理类需要实现Controller接口:

    BeanNameUrlHandlerMapping

    Controller方面的测试代码跟前面的SimpleUrlHandlerMapping一样,实现Controller,重写handlerRequest()方法即可。

    handlerAdapter

    handlerAdapter对应的是Controller,有三种最常用的HandlerAdapter,分别是:
    1、RequestMappingHandlerAdapter
    2、HttpRequestHandlerAdapter
    3、SimpleControllerHandlerAdapter

    RequestMappingHandlerAdapter主要是适配注解类处理器,注解类处理器就是我们经常使用的@Controller的这类处理器。
    HttpRequestHandlerAdapter主要是适配静态资源处理器,静态资源处理器就是实现了HttpRequestHandler接口的处理器,这类处理器的作用是处理通过SpringMVC来访问的静态资源的请求。
    SimpleControllerHandlerAdapter是Controller处理适配器,适配实现了Controller接口或Controller接口子类的处理器。



    作者:代码potty
    链接:https://www.jianshu.com/p/e4f1c9326223
    来源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    bzoj1861 [Zjoi2006]Book 书架
    bzoj1208 [HNOI2004]宠物收养所
    bzoj1588 [HNOI2002]营业额统计
    bzoj3295 [Cqoi2011]动态逆序对
    bzoj2716 [Violet 3]天使玩偶
    bzoj1176 [Balkan2007]Mokia
    bzoj3262 陌上花开
    spoj FTOUR2
    bzoj2152 聪聪可可
    poj1741 Tree
  • 原文地址:https://www.cnblogs.com/natian-ws/p/10859771.html
Copyright © 2020-2023  润新知