org.springframework.web.servlet.config.annotation

Class PathMatchConfigurer

  • java.lang.Object
    • org.springframework.web.servlet.config.annotation.PathMatchConfigurer


  • public class PathMatchConfigurer
    extends java.lang.Object
    Helps with configuring HandlerMappings path matching options such as trailing slash match, suffix registration, path matcher and path helper.

    Configured path matcher and path helper instances are shared for:

    • RequestMappings
    • ViewControllerMappings
    • ResourcesMappings
    Since:
    4.0.3
    Author:
    Brian Clozel
    See Also:
    RequestMappingHandlerMapping, SimpleUrlHandlerMapping
    • Constructor Detail

      • PathMatchConfigurer

        public PathMatchConfigurer()
    • Method Detail

      • setUseSuffixPatternMatch

        public PathMatchConfigurer setUseSuffixPatternMatch(java.lang.Boolean suffixPatternMatch)
        Whether to use suffix pattern match (".*") when matching patterns to requests. If enabled a method mapped to "/users" also matches to "/users.*".

        By default this is set to true.

        See Also:
        registeredSuffixPatternMatch
      • setUseTrailingSlashMatch

        public PathMatchConfigurer setUseTrailingSlashMatch(java.lang.Boolean trailingSlashMatch)
        Whether to match to URLs irrespective of the presence of a trailing slash. If enabled a method mapped to "/users" also matches to "/users/".

        The default value is true.

      • setUrlPathHelper

        public PathMatchConfigurer setUrlPathHelper(UrlPathHelper urlPathHelper)
        Set the UrlPathHelper to use for resolution of lookup paths.

        Use this to override the default UrlPathHelper with a custom subclass, or to share common UrlPathHelper settings across multiple HandlerMappings and MethodNameResolvers.

      • setPathMatcher

        public PathMatchConfigurer setPathMatcher(PathMatcher pathMatcher)
        Set the PathMatcher implementation to use for matching URL paths against registered URL patterns. Default is AntPathMatcher.
        See Also:
        AntPathMatcher
      • addPathPrefix

        public PathMatchConfigurer addPathPrefix(java.lang.String prefix,
                                                 java.util.function.Predicate<java.lang.Class<?>> predicate)
        Configure a path prefix to apply to matching controller methods.

        Prefixes are used to enrich the mappings of every @RequestMapping method whose controller type is matched by the corresponding Predicate. The prefix for the first matching predicate is used.

        Consider using HandlerTypePredicate to group controllers.

        Parameters:
        prefix - the prefix to apply
        predicate - a predicate for matching controller types
        Since:
        5.1
      • isUseSuffixPatternMatch

        @Nullable
        public java.lang.Boolean isUseSuffixPatternMatch()
      • isUseTrailingSlashMatch

        @Nullable
        public java.lang.Boolean isUseTrailingSlashMatch()
      • isUseRegisteredSuffixPatternMatch

        @Nullable
        public java.lang.Boolean isUseRegisteredSuffixPatternMatch()
      • getPathPrefixes

        @Nullable
        protected java.util.Map<java.lang.String,java.util.function.Predicate<java.lang.Class<?>>> getPathPrefixes()