• 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
    来源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    HTML5 JS 实现浏览器全屏(F11的效果)
    SpringMVC学习笔记之二(SpringMVC高级参数绑定)
    二十三种设计模式总结
    系统开发中使用拦截器校验是否登录并使用MD5对用户登录密码进行加密
    Mybatis学习笔记之二(动态mapper开发和spring-mybatis整合)
    Mybatis学习笔记之一(环境搭建和入门案例介绍)
    Java中clone方法的使用
    列举Java中常用的包、类和接口
    Spring中bean的注入方式
    [ SSH框架 ] Spring框架学习之三(AOP开发和注解的使用)
  • 原文地址:https://www.cnblogs.com/natian-ws/p/10859771.html
Copyright © 2020-2023  润新知