zoukankan      html  css  js  c++  java
  • spring debug

    DispatcherServlet{

    getHandler()
    }
    handlerMappings{
    RequestMappingHandlerMapping
    BeanNameUrlHandlerMapping
    WebMvcConfigurationSupport
    }

    BeanNameUrlHandlerMapping{
    determineUrlsForHandler() //加断点 可知 urlmapping有没有正确
    }

    RequestMappingHandlerMapping{
    createRequestMappingInfo() //url成功了才到这
    }

    RequestMappingHandlerAdapter {
    handleInternal  //加断点 
    }
    SimpleControllerHandlerAdapter,
    SimplePortletHandlerAdapter

    检查handlerMappings 在以下代码 启动时断点

    private void initHandlerMappings(ApplicationContext context) {
    this.handlerMappings = null;

    if (this.detectAllHandlerMappings) {
    // Find all HandlerMappings in the ApplicationContext, including ancestor contexts.
    Map<String, HandlerMapping> matchingBeans =
    BeanFactoryUtils.beansOfTypeIncludingAncestors(context, HandlerMapping.class, true, false);
    if (!matchingBeans.isEmpty()) {
    this.handlerMappings = new ArrayList<HandlerMapping>(matchingBeans.values());
    // We keep HandlerMappings in sorted order.
    AnnotationAwareOrderComparator.sort(this.handlerMappings);
    }
    }

    BeanNameUrlHandlerMapping{
    determineUrlsForHandler
    }
    RequestMappingHandlerMapping 以前的DefaultAnnotationHandlerMapping


    AbstractHandlerMapping{
    getHandler  真正作urlmatch
    }

    AbstractHandlerMethodMapping{
    getHandlerInternal

    protected HandlerMethod lookupHandlerMethod(String lookupPath, HttpServletRequest request) throws Exception {
    List<Match> matches = new ArrayList<Match>();
    List<T> directPathMatches = this.mappingRegistry.getMappingsByUrl(lookupPath);

  • 相关阅读:
    HDU2059(龟兔赛跑)
    pat 1012 The Best Rank
    pat 1010 Radix
    pat 1007 Maximum Subsequence Sum
    pat 1005 Sign In and Sign Out
    pat 1005 Spell It Right
    pat 1004 Counting Leaves
    1003 Emergency
    第7章 输入/输出系统
    第六章 总线
  • 原文地址:https://www.cnblogs.com/anjuncc/p/5250210.html
Copyright © 2011-2022 走看看