public abstract class AbstractNamedValueMethodArgumentResolver extends java.lang.Object implements HandlerMethodArgumentResolver
サブクラスは、次の方法を定義します。
デフォルト値の文字列には、${...} プレースホルダーと Spring 式言語 #{...} 式を含めることができます。これを機能させるには、ConfigurableBeanFactory をクラスコンストラクターに指定する必要があります。
WebDataBinder は、メソッドのパラメーター型と一致しない場合に、解決された引数値に型変換を適用するために作成されます。
| 修飾子と型 | クラスと説明 |
|---|---|
protected static class | AbstractNamedValueMethodArgumentResolver.NamedValueInfo 名前、必須かどうか、デフォルト値など、名前付き値に関する情報を表します。 |
| コンストラクターと説明 |
|---|
AbstractNamedValueMethodArgumentResolver() |
AbstractNamedValueMethodArgumentResolver(ConfigurableBeanFactory beanFactory) 新しい AbstractNamedValueMethodArgumentResolver インスタンスを作成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo | createNamedValueInfo(MethodParameter parameter) 指定されたメソッドパラメーターの AbstractNamedValueMethodArgumentResolver.NamedValueInfo オブジェクトを作成します。 |
protected void | handleMissingValue(java.lang.String name, MethodParameter parameter) 名前付き値が必要であるが、 resolveName(String, MethodParameter, NativeWebRequest) が null を返し、デフォルト値がない場合に呼び出されます。 |
protected void | handleMissingValue(java.lang.String name, MethodParameter parameter, NativeWebRequest request) 名前付き値が必要であるが、 resolveName(String, MethodParameter, NativeWebRequest) が null を返し、デフォルト値がない場合に呼び出されます。 |
protected void | handleResolvedValue(java.lang.Object arg, java.lang.String name, MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest) 値が解決された後に呼び出されます。 |
java.lang.Object | resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) メソッドパラメーターを解決して、指定されたリクエストの引数値にします。 |
protected abstract java.lang.Object | resolveName(java.lang.String name, MethodParameter parameter, NativeWebRequest request) 指定されたパラメーターの型と値の名前を引数の値に解決します。 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsupportsParameterpublic AbstractNamedValueMethodArgumentResolver()
public AbstractNamedValueMethodArgumentResolver(@Nullable ConfigurableBeanFactory beanFactory)
AbstractNamedValueMethodArgumentResolver インスタンスを作成します。beanFactory - デフォルト値の ${...} プレースホルダーと #{...} SpEL 式を解決するために使用する Bean ファクトリ、またはデフォルト値に式が含まれることが予期されていない場合は null @Nullable public final java.lang.Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws java.lang.Exception
HandlerMethodArgumentResolverModelAndViewContainer は、リクエストのモデルへのアクセスを提供します。WebDataBinderFactory は、データバインディングや型変換の目的で必要な場合に WebDataBinder インスタンスを作成する方法を提供します。HandlerMethodArgumentResolver 内の resolveArgument parameter - 解決するメソッドパラメーター。このパラメーターは、true を返さなければならない HandlerMethodArgumentResolver.supportsParameter(org.springframework.core.MethodParameter) に事前に渡されている必要があります。mavContainer - 現在のリクエストの ModelAndViewContainerwebRequest - 現在のリクエスト binderFactory - WebDataBinder インスタンスを作成するためのファクトリ null java.lang.Exception - 引数値の準備でエラーが発生した場合 protected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueMethodArgumentResolver.NamedValueInfo オブジェクトを作成します。実装は通常、MethodParameter.getParameterAnnotation(Class) を使用してメソッドアノテーションを取得します。parameter - メソッドパラメーター @Nullable protected abstract java.lang.Object resolveName(java.lang.String name, MethodParameter parameter, NativeWebRequest request) throws java.lang.Exception
name - 解決される値の名前 parameter - 引数値に解決するメソッドパラメーター (Optional 宣言の場合は事前にネスト)request - 現在のリクエスト null の場合があります)java.lang.Exception - エラーの場合 protected void handleMissingValue(java.lang.String name,
MethodParameter parameter,
NativeWebRequest request)
throws java.lang.ExceptionresolveName(String, MethodParameter, NativeWebRequest) が null を返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。name - 値の名前 parameter - メソッドパラメーター request - 現在のリクエスト java.lang.Exceptionprotected void handleMissingValue(java.lang.String name,
MethodParameter parameter)
throws ServletExceptionEEresolveName(String, MethodParameter, NativeWebRequest) が null を返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。name - 値の名前 parameter - メソッドパラメーター ServletExceptionEEprotected void handleResolvedValue(@Nullable java.lang.Object arg, java.lang.String name, MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest)
arg - 解決された引数値 name - 引数名 parameter - 引数パラメーターの型 mavContainer - ModelAndViewContainer (null の場合があります)webRequest - 現在のリクエスト