## org.springframework.web.method.annotation
Class RequestParamMapMethodArgumentResolver

    java.lang.Object
      org.springframework.web.method.annotation.RequestParamMapMethodArgumentResolver

All Implemented Interfaces:
  HandlerMethodArgumentResolver

    public class RequestParamMapMethodArgumentResolver

extends Object
implements HandlerMethodArgumentResolver

Resolves `Map` method arguments annotated with an @`RequestParam` where the annotation does not specify a request parameter name. See `RequestParamMethodArgumentResolver` for resolving `Map` method arguments with a request parameter name.

The created `Map` contains all request parameter name/value pairs. If the method parameter type is `MultiValueMap` instead, the created map contains all request parameters and all there values for cases where request parameters have multiple values.

Since:
  3.1
Author:
  Arjen Poutsma, Rossen Stoyanchev
See Also:
  `RequestParamMethodArgumentResolver`

Constructor Summary
`RequestParamMapMethodArgumentResolver()`

Method Summary
`Object` `resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory)` Resolves a method parameter into an argument value from a given request.
`boolean` `supportsParameter(MethodParameter parameter)` Whether the given method parameter is supported by this resolver.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### RequestParamMapMethodArgumentResolver

    public RequestParamMapMethodArgumentResolver()

Method Detail

### supportsParameter

    public boolean supportsParameter(MethodParameter parameter)

  Description copied from interface: `HandlerMethodArgumentResolver`
  Whether the given method parameter is supported by this resolver.

  Specified by:
    `supportsParameter` in interface `HandlerMethodArgumentResolver`
  Parameters:
    `parameter` - the method parameter to check
  Returns:
    `true` if this resolver supports the supplied parameter; `false` otherwise

### resolveArgument

    public Object resolveArgument(MethodParameter parameter,
                                  ModelAndViewContainer mavContainer,
                                  NativeWebRequest webRequest,
                                  WebDataBinderFactory binderFactory)
                           throws Exception

  Description copied from interface: `HandlerMethodArgumentResolver`
  Resolves a method parameter into an argument value from a given request. A `ModelAndViewContainer` provides access to the model for the request. A `WebDataBinderFactory` provides a way to create a `WebDataBinder` instance when needed for data binding and type conversion purposes.

  Specified by:
    `resolveArgument` in interface `HandlerMethodArgumentResolver`
  Parameters:
    `parameter` - the method parameter to resolve. This parameter must have previously been passed to `HandlerMethodArgumentResolver.supportsParameter(org.springframework.core.MethodParameter)` and it must have returned `true`
    `mavContainer` - the ModelAndViewContainer for the current request
    `webRequest` - the current request
    `binderFactory` - a factory for creating `WebDataBinder` instances
  Returns:
    the resolved argument value, or `null`.
  Throws:
    `Exception` - in case of errors with the preparation of argument values