public abstract class AbstractNamedValueMethodArgumentResolver extends ObjectSE implements SyncHandlerMethodArgumentResolver
サブクラスは、メソッドパラメーターから名前付き値の詳細を取得する方法、引数値に解決する方法、欠落している値を処理する方法など、特定の手順を定義するだけで済みます。
デフォルト値の文字列には、${...} プレースホルダーと Spring 式言語 #{...}
式を含めることができます。これらは、ConfigurableBeanFactory
がクラスコンストラクターに提供された場合に解決されます。
ConversionService
は、解決された文字列引数値を予期されるターゲットメソッドパラメーター型に変換するために使用されます。
修飾子と型 | クラスと説明 |
---|---|
protected static class | AbstractNamedValueMethodArgumentResolver.NamedValueInfo 名前付き値の宣言を表します。 |
修飾子 | コンストラクターと説明 |
---|---|
protected | AbstractNamedValueMethodArgumentResolver(ConversionService conversionService, ConfigurableBeanFactory beanFactory) ConversionService および BeanFactory を持つコンストラクター。 |
修飾子と型 | メソッドと説明 |
---|---|
protected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo | createNamedValueInfo(MethodParameter parameter) 指定されたメソッドパラメーターの AbstractNamedValueMethodArgumentResolver.NamedValueInfo オブジェクトを作成します。 |
protected abstract void | handleMissingValue(StringSE name, MethodParameter parameter, Message<?> message) 値が必要なときに呼び出されますが、 resolveArgumentInternal(org.springframework.core.MethodParameter, org.springframework.messaging.Message<?>, java.lang.String) は null を返し、デフォルト値はありません。 |
protected abstract ObjectSE | resolveArgumentInternal(MethodParameter parameter, Message<?> message, StringSE name) 指定されたパラメーターの型と値の名前を引数値に解決します。 |
ObjectSE | resolveArgumentValue(MethodParameter parameter, Message<?> message) メソッドパラメーターの値を同期的に解決します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
resolveArgument
supportsParameter
protected AbstractNamedValueMethodArgumentResolver(ConversionService conversionService, @Nullable ConfigurableBeanFactory beanFactory)
ConversionService
および BeanFactory
を持つコンストラクター。conversionService
- 文字列値をターゲットメソッドパラメーター型に変換するための変換サービス beanFactory
- ${...}
プレースホルダーと #{...}
SpEL 式をデフォルト値で解決するための Bean ファクトリ public ObjectSE resolveArgumentValue(MethodParameter parameter, Message<?> message)
SyncHandlerMethodArgumentResolver
SyncHandlerMethodArgumentResolver
の resolveArgumentValue
parameter
- メソッドパラメーター message
- 現在処理されているメッセージ protected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueMethodArgumentResolver.NamedValueInfo
オブジェクトを作成します。実装は通常、MethodParameter.getParameterAnnotation(Class)
を使用してメソッドアノテーションを取得します。parameter
- メソッドパラメーター @Nullable protected abstract ObjectSE resolveArgumentInternal(MethodParameter parameter, Message<?> message, StringSE name)
parameter
- 引数値に解決するメソッドパラメーター message
- 現在のリクエスト name
- 解決される値の名前 null
の可能性があります protected abstract void handleMissingValue(StringSE name, MethodParameter parameter, Message<?> message)
resolveArgumentInternal(org.springframework.core.MethodParameter, org.springframework.messaging.Message<?>, java.lang.String)
は null
を返し、デフォルト値はありません。この場合、サブクラスは適切な例外をスローできます。name
- 値の名前 parameter
- ターゲットメソッドのパラメーター message
- 処理中のメッセージ