クラス AbstractNamedValueMethodArgumentResolver
java.lang.ObjectSE
org.springframework.messaging.handler.annotation.reactive.AbstractNamedValueMethodArgumentResolver
- 実装されたすべてのインターフェース:
HandlerMethodArgumentResolver
,SyncHandlerMethodArgumentResolver
public abstract class AbstractNamedValueMethodArgumentResolver
extends ObjectSE
implements SyncHandlerMethodArgumentResolver
名前付きの値からメソッド引数を解決するための抽象基本クラス。メッセージヘッダーまたは宛先変数。名前付き値には、1 つ以上の名前、必須フラグ、デフォルト値を含めることができます。
サブクラスは、メソッドパラメーターから名前付き値の詳細を取得する方法、引数値に解決する方法、欠落している値を処理する方法など、特定の手順を定義するだけで済みます。
デフォルト値の文字列には、${...} プレースホルダーと Spring 式言語 #{...}
式を含めることができます。これらは、ConfigurableBeanFactory
がクラスコンストラクターに提供された場合に解決されます。
ConversionService
は、解決された文字列引数値を予期されるターゲットメソッドパラメーター型に変換するために使用されます。
- 導入:
- 5.2
- 作成者:
- Rossen Stoyanchev
ネストされたクラスのサマリー
修飾子と型クラス説明protected static class
名前付き値の宣言を表します。コンストラクターのサマリー
修飾子コンストラクター説明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) 指定されたパラメーターの型と値の名前を引数値に解決します。resolveArgumentValue
(MethodParameter parameter, Message<?> message) メソッドパラメーターの値を同期的に解決します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.messaging.handler.invocation.reactive.HandlerMethodArgumentResolver から継承されたメソッド
supportsParameter
インターフェース org.springframework.messaging.handler.invocation.reactive.SyncHandlerMethodArgumentResolver から継承されたメソッド
resolveArgument
コンストラクターの詳細
AbstractNamedValueMethodArgumentResolver
protected AbstractNamedValueMethodArgumentResolver(ConversionService conversionService, @Nullable ConfigurableBeanFactory beanFactory) ConversionService
およびBeanFactory
を持つコンストラクター。- パラメーター:
conversionService
- 文字列値をターゲットメソッドパラメーター型に変換するための変換サービスbeanFactory
-${...}
プレースホルダーと#{...}
SpEL 式をデフォルト値で解決するための Bean ファクトリ
メソッドの詳細
resolveArgumentValue
インターフェースからコピーされた説明:SyncHandlerMethodArgumentResolver
メソッドパラメーターの値を同期的に解決します。- 次で指定:
- インターフェース
SyncHandlerMethodArgumentResolver
のresolveArgumentValue
- パラメーター:
parameter
- メソッドパラメーターmessage
- 現在処理されているメッセージ- 戻り値:
- 解決された値(存在する場合)
createNamedValueInfo
protected abstract AbstractNamedValueMethodArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter) 指定されたメソッドパラメーターのAbstractNamedValueMethodArgumentResolver.NamedValueInfo
オブジェクトを作成します。実装は通常、MethodParameter.getParameterAnnotation(Class)
を使用してメソッドアノテーションを取得します。- パラメーター:
parameter
- メソッドパラメーター- 戻り値:
- 名前付き値の情報
resolveArgumentInternal
@Nullable protected abstract ObjectSE resolveArgumentInternal(MethodParameter parameter, Message<?> message, StringSE name) 指定されたパラメーターの型と値の名前を引数値に解決します。- パラメーター:
parameter
- 引数値に解決するメソッドパラメーターmessage
- 現在のリクエストname
- 解決される値の名前- 戻り値:
- 解決された引数。
null
の可能性があります
handleMissingValue
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
- 処理中のメッセージ