Supports direct matches, e.g. a registered "/test" matches "/test", and
various path pattern matches, e.g. a registered "/t*" pattern matches
both "/test" and "/team", "/test/*" matches all paths under "/test",
"/test/**" matches all paths below "/test". For details, see the
Will search all path patterns to find the most specific match for the
current request path. The most specific pattern is defined as the longest
path pattern with the fewest captured variables and wildcards.
public void setLazyInitHandlers(boolean lazyInitHandlers)
Set whether to lazily initialize handlers. Only applicable to
singleton handlers, as prototypes are always lazily initialized.
Default is "false", as eager initialization allows for more efficiency
through referencing the controller objects directly.
If you want to allow your controllers to be lazily initialized,
make them "lazy-init" and set this flag to true. Just making them
"lazy-init" will not work, as they are initialized through the
references from the handler mapping in this case.
public final java.util.Map<PathPattern,java.lang.Object> getHandlerMap()
Return a read-only view of registered path patterns and handlers which may
may be an actual handler instance or the bean name of lazily initialized
public reactor.core.publisher.Mono<java.lang.Object> getHandlerInternal(ServerWebExchange exchange)
On CORS pre-flight requests this method should return a match not for
the pre-flight request but for the expected actual request based on the URL
path, the HTTP methods from the "Access-Control-Request-Method" header, and
the headers from the "Access-Control-Request-Headers" header.