diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/SimpleUrlHandlerMapping.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/SimpleUrlHandlerMapping.java index abef0a7ff7..e34aa0b5a1 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/SimpleUrlHandlerMapping.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/handler/SimpleUrlHandlerMapping.java @@ -16,7 +16,7 @@ package org.springframework.web.servlet.handler; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.Map; import java.util.Properties; @@ -55,7 +55,7 @@ import org.springframework.util.CollectionUtils; */ public class SimpleUrlHandlerMapping extends AbstractUrlHandlerMapping { - private final Map urlMap = new HashMap(); + private final Map urlMap = new LinkedHashMap(); /** diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/ResourceUrlProvider.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/ResourceUrlProvider.java index 13298ed8bb..fbd2a55074 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/ResourceUrlProvider.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/ResourceUrlProvider.java @@ -19,7 +19,7 @@ package org.springframework.web.servlet.resource; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; @@ -55,7 +55,7 @@ public class ResourceUrlProvider implements ApplicationListener handlerMap = new HashMap(); + private final Map handlerMap = new LinkedHashMap(); private boolean autodetect = true; diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/VersionResourceResolver.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/VersionResourceResolver.java index 939f855233..5a06260766 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/VersionResourceResolver.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/resource/VersionResourceResolver.java @@ -19,9 +19,10 @@ package org.springframework.web.servlet.resource; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; -import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.List; import java.util.Map; + import javax.servlet.http.HttpServletRequest; import org.springframework.core.io.Resource; @@ -60,7 +61,7 @@ public class VersionResourceResolver extends AbstractResourceResolver { private AntPathMatcher pathMatcher = new AntPathMatcher(); /** Map from path pattern -> VersionStrategy */ - private final Map versionStrategyMap = new HashMap(); + private final Map versionStrategyMap = new LinkedHashMap(); /** @@ -209,17 +210,17 @@ public class VersionResourceResolver extends AbstractResourceResolver { */ protected VersionStrategy getStrategyForPath(String requestPath) { String path = "/".concat(requestPath); - List matchingPatterns = new ArrayList(); + List matchingPatterns = new ArrayList(); for (String pattern : this.versionStrategyMap.keySet()) { if (this.pathMatcher.match(pattern, path)) { - matchingPatterns.add(pattern); + matchingPatterns.add(pattern); } } - if (!matchingPatterns.isEmpty()) { - Comparator comparator = this.pathMatcher.getPatternComparator(path); - Collections.sort(matchingPatterns, comparator); - return this.versionStrategyMap.get(matchingPatterns.get(0)); - } + if (!matchingPatterns.isEmpty()) { + Comparator comparator = this.pathMatcher.getPatternComparator(path); + Collections.sort(matchingPatterns, comparator); + return this.versionStrategyMap.get(matchingPatterns.get(0)); + } return null; }