public abstract class AbstractNamedValueArgumentResolver extends HandlerMethodArgumentResolverSupport
サブクラスは、次の方法を定義します。
デフォルト値の文字列には、${...} プレースホルダーと Spring 式言語 #{...} 式を含めることができます。これを機能させるには、ConfigurableBeanFactory
をクラスコンストラクターに指定する必要があります。
修飾子と型 | クラスと説明 |
---|---|
protected static class | AbstractNamedValueArgumentResolver.NamedValueInfo 名前、必須かどうか、デフォルト値など、名前付き値に関する情報を表します。 |
logger
コンストラクターと説明 |
---|
AbstractNamedValueArgumentResolver(ConfigurableBeanFactory factory, ReactiveAdapterRegistry registry) 新しい AbstractNamedValueArgumentResolver インスタンスを作成します。 |
checkAnnotatedParamNoReactiveWrapper, checkParameterType, checkParameterTypeNoReactiveWrapper, getAdapterRegistry
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
supportsParameter
public AbstractNamedValueArgumentResolver(@Nullable ConfigurableBeanFactory factory, ReactiveAdapterRegistry registry)
AbstractNamedValueArgumentResolver
インスタンスを作成します。factory
- デフォルト値の ${...}
プレースホルダーと #{...}
SpEL 式を解決するために使用する Bean ファクトリ、またはデフォルト値に式が含まれることが予期されていない場合は null
registry
- リアクティブ型ラッパーのチェック用 public reactor.core.publisher.Mono<ObjectSE> resolveArgument(MethodParameter parameter, BindingContext bindingContext, ServerWebExchange exchange)
HandlerMethodArgumentResolver
parameter
- メソッドパラメーター bindingContext
- 使用するバインディングコンテキスト exchange
- 現在の交換 Mono
、おそらく空 protected abstract AbstractNamedValueArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter)
AbstractNamedValueArgumentResolver.NamedValueInfo
オブジェクトを作成します。実装は通常、MethodParameter.getParameterAnnotation(Class)
を使用してメソッドアノテーションを取得します。parameter
- メソッドパラメーター protected abstract reactor.core.publisher.Mono<ObjectSE> resolveName(StringSE name, MethodParameter parameter, ServerWebExchange exchange)
name
- 解決される値の名前 parameter
- 引数値に解決するメソッドパラメーター (Optional
SE 宣言の場合は事前ネスト)exchange
- 現在の交換 Mono
の可能性があります)protected void handleMissingValue(StringSE name, MethodParameter parameter, ServerWebExchange exchange)
resolveName(String, MethodParameter, ServerWebExchange)
が null
を返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。name
- 値の名前 parameter
- メソッドパラメーター exchange
- 現在の交換 protected void handleMissingValue(StringSE name, MethodParameter parameter)
resolveName(String, MethodParameter, ServerWebExchange)
が null
を返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。name
- 値の名前 parameter
- メソッドパラメーター protected void handleResolvedValue(@Nullable ObjectSE arg, StringSE name, MethodParameter parameter, Model model, ServerWebExchange exchange)
arg
- 解決された引数値 name
- 引数名 parameter
- 引数パラメーターの型 model
- モデル exchange
- 現在の交換