public class RequestHeaderMethodArgumentResolver extends AbstractNamedValueMethodArgumentResolver
Map
SE 引数を除いて、@RequestHeader
でアノテーションされたメソッド引数を解決します。@RequestHeader
でアノテーションが付けられた Map
SE 引数の詳細については、RequestHeaderMapMethodArgumentResolver
を参照してください。@RequestHeader
は、リクエストヘッダーから解決される名前付きの値です。リクエストヘッダーが存在しない場合に使用する必須フラグとデフォルト値があります。
WebDataBinder
が呼び出され、メソッドのパラメーター型とまだ一致しない解決済みのリクエストヘッダー値に型変換が適用されます。
AbstractNamedValueMethodArgumentResolver.NamedValueInfo
コンストラクターと説明 |
---|
RequestHeaderMethodArgumentResolver(ConfigurableBeanFactory beanFactory) 新しい RequestHeaderMethodArgumentResolver インスタンスを作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo | createNamedValueInfo(MethodParameter parameter) 指定されたメソッドパラメーターの AbstractNamedValueMethodArgumentResolver.NamedValueInfo オブジェクトを作成します。 |
protected void | handleMissingValue(StringSE name, MethodParameter parameter) 名前付き値が必要であるが、 AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest) が null を返し、デフォルト値がない場合に呼び出されます。 |
protected ObjectSE | resolveName(StringSE name, MethodParameter parameter, NativeWebRequest request) 指定されたパラメーターの型と値の名前を引数の値に解決します。 |
boolean | supportsParameter(MethodParameter parameter) 指定されたメソッドパラメーターがこのリゾルバーによってサポートされているかどうか。 |
handleMissingValue, handleResolvedValue, resolveArgument
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public RequestHeaderMethodArgumentResolver(@Nullable ConfigurableBeanFactory beanFactory)
RequestHeaderMethodArgumentResolver
インスタンスを作成します。beanFactory
- デフォルト値の ${...} プレースホルダーと #{...} SpEL 式を解決するために使用する Bean ファクトリ。または null
(デフォルト値に式があると予想されない場合)public boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolver
parameter
- チェックするメソッドパラメーター true
。それ以外の場合は false
protected AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueMethodArgumentResolver
AbstractNamedValueMethodArgumentResolver.NamedValueInfo
オブジェクトを作成します。実装は通常、MethodParameter.getParameterAnnotation(Class)
を使用してメソッドアノテーションを取得します。AbstractNamedValueMethodArgumentResolver
の createNamedValueInfo
parameter
- メソッドパラメーター @Nullable protected ObjectSE resolveName(StringSE name, MethodParameter parameter, NativeWebRequest request) throws ExceptionSE
AbstractNamedValueMethodArgumentResolver
AbstractNamedValueMethodArgumentResolver
の resolveName
name
- 解決される値の名前 parameter
- 引数値に解決するメソッドパラメーター (Optional
SE 宣言の場合は事前ネスト)request
- 現在のリクエスト null
の場合があります)ExceptionSE
- エラーの場合 protected void handleMissingValue(StringSE name, MethodParameter parameter) throws ServletRequestBindingException
AbstractNamedValueMethodArgumentResolver
AbstractNamedValueMethodArgumentResolver.resolveName(String, MethodParameter, NativeWebRequest)
が null
を返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。AbstractNamedValueMethodArgumentResolver
の handleMissingValue
name
- 値の名前 parameter
- メソッドパラメーター ServletRequestBindingException