接口 WebArgumentResolver
- 函数接口:
- 这是一个函数接口, 因此可用作 lambda 表达式或方法引用的赋值目标。
@FunctionalInterface public interface WebArgumentResolver
SPI for resolving custom arguments for a specific handler method parameter. Typically implemented to detect special parameter types, resolving well-known argument values for them.A typical implementation could look like as follows:
public class MySpecialArgumentResolver implements WebArgumentResolver { public Object resolveArgument(MethodParameter methodParameter, NativeWebRequest webRequest) { if (methodParameter.getParameterType().equals(MySpecialArg.class)) { return new MySpecialArg("myValue"); } return UNRESOLVED; } }
- 从以下版本开始:
- 2.5.2
- 作者:
- Juergen Hoeller
- 另请参阅:
RequestMappingHandlerAdapter.setCustomArgumentResolvers(java.util.List<org.springframework.web.method.support.HandlerMethodArgumentResolver>)
字段概要
字段 修饰符和类型 字段 说明 static Object
UNRESOLVED
Marker to be returned when the resolver does not know how to handle the given method parameter.
方法概要
所有方法 实例方法 抽象方法 修饰符和类型 方法 说明 Object
resolveArgument(MethodParameter methodParameter, NativeWebRequest webRequest)
Resolve an argument for the given handler method parameter within the given web request.
字段详细资料
UNRESOLVED
static final Object UNRESOLVED
Marker to be returned when the resolver does not know how to handle the given method parameter.
方法详细资料
resolveArgument
@Nullable Object resolveArgument(MethodParameter methodParameter, NativeWebRequest webRequest) throws Exception
Resolve an argument for the given handler method parameter within the given web request.- 参数:
methodParameter
- the handler method parameter to resolvewebRequest
- the current web request, allowing access to the native request as well- 返回:
- the argument value, or
UNRESOLVED
if not resolvable - 抛出:
Exception
- in case of resolution failure