public class RequestParamMapMethodArgumentResolver extends java.lang.Object implements HandlerMethodArgumentResolver
Map
method arguments annotated with an @RequestParam
where the annotation does not specify a request parameter name.
The created Map
contains all request parameter name/value pairs,
or all multipart files for a given parameter name if specifically declared
with MultipartFile
as the value type. If the method parameter type is
MultiValueMap
instead, the created map contains all request parameters
and all their values for cases where request parameters have multiple values
(or multiple multipart files of the same name).
RequestParamMethodArgumentResolver
,
ServletRequest.getParameterMap()
,
MultipartRequest.getMultiFileMap()
,
MultipartRequest.getFileMap()
Constructor and Description |
---|
RequestParamMapMethodArgumentResolver() |
Modifier and Type | Method and Description |
---|---|
java.lang.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.
|
public RequestParamMapMethodArgumentResolver()
public boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolver
supportsParameter
in interface HandlerMethodArgumentResolver
parameter
- the method parameter to checktrue
if this resolver supports the supplied parameter;
false
otherwisepublic java.lang.Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws java.lang.Exception
HandlerMethodArgumentResolver
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.resolveArgument
in interface HandlerMethodArgumentResolver
parameter
- the method parameter to resolve. This parameter must
have previously been passed to HandlerMethodArgumentResolver.supportsParameter(org.springframework.core.MethodParameter)
which must
have returned true
.mavContainer
- the ModelAndViewContainer for the current requestwebRequest
- the current requestbinderFactory
- a factory for creating WebDataBinder
instancesnull
if not resolvablejava.lang.Exception
- in case of errors with the preparation of argument values