クラス MethodValidationPostProcessor
- 実装されているすべてのインターフェース:
SerializableSE、AopInfrastructureBean、Aware、BeanClassLoaderAware、BeanFactoryAware、BeanPostProcessor、InstantiationAwareBeanPostProcessor、SmartInstantiationAwareBeanPostProcessor、InitializingBean、Ordered
BeanPostProcessor 実装。適用可能なメソッドには、パラメーターおよび / または戻り値に JSR-303 制約アノテーションがあります (後者の場合、通常はインラインアノテーションとしてメソッドレベルで指定されます)。例:
public @NotNull Object myValidMethod(@NotNull String arg1, @Max(10) int arg2)
検証エラーが発生した場合、インターセプターは ConstraintViolationExceptionEE を発生させるか、違反を MethodValidationResult に適応させて MethodValidationException を発生させることができます。
このようなアノテーション付きメソッドを持つターゲットクラスは、インライン制約アノテーションをメソッドで検索するために、型レベルで Spring の Validated アノテーションを付ける必要があります。検証グループは @Validated でも指定できます。デフォルトでは、JSR-303 はそのデフォルトグループに対してのみ検証します。
この機能には、Bean 検証 1.1+ プロバイダーが必要です。
- 導入:
- 3.1
- 作成者:
- Juergen Hoeller
- 関連事項:
フィールドのサマリー
クラス org.springframework.aop.framework.autoproxy.AbstractBeanFactoryAwareAdvisingPostProcessor から継承されたフィールド
beanFactoryクラス org.springframework.aop.framework.AbstractAdvisingBeanPostProcessor から継承されたフィールド
advisor, beforeExistingAdvisorsインターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCEコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明voidprotected AdvicecreateMethodValidationAdvice(SupplierSE<ValidatorEE> validator) メソッド検証の目的で AOP アドバイスを作成し、指定された「検証済み」アノテーションのポイントカットを適用します。voidsetAdaptConstraintViolations(boolean adaptViolations) ConstraintViolationEE をMethodValidationResultに適応させるかどうか。voidsetValidatedAnnotationType(ClassSE<? extends AnnotationSE> validatedAnnotationType) 「検証済み」のアノテーション型を設定します。voidsetValidator(ValidatorEE validator) メソッドを検証するために委譲する JSR-303 バリデーターを設定します。voidsetValidatorFactory(ValidatorFactoryEE validatorFactory) デフォルトの Validator を使用して、JSR-303 ValidatorFactory を検証メソッドに委譲するように設定します。voidsetValidatorProvider(ObjectProvider<ValidatorEE> validatorProvider) 遅延初期化された Validator を設定して、メソッドを検証するために委譲します。クラス org.springframework.aop.framework.autoproxy.AbstractBeanFactoryAwareAdvisingPostProcessor から継承されたメソッド
isEligible, prepareProxyFactory, setBeanFactoryクラス org.springframework.aop.framework.AbstractAdvisingBeanPostProcessor から継承されたメソッド
customizeProxyFactory, determineBeanType, isEligible, postProcessAfterInitialization, setBeforeExistingAdvisorsクラス org.springframework.aop.framework.ProxyProcessorSupport から継承されたメソッド
evaluateProxyInterfaces, getOrder, getProxyClassLoader, isConfigurationCallbackInterface, isInternalLanguageInterface, setBeanClassLoader, setOrder, setProxyClassLoaderクラス org.springframework.aop.framework.ProxyConfig から継承されたメソッド
copyDefault, copyFrom, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setFrozen, setOpaque, setOptimize, setProxyTargetClass, toStringクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース org.springframework.beans.factory.config.BeanPostProcessor から継承されたメソッド
postProcessBeforeInitializationインターフェース org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor から継承されたメソッド
postProcessAfterInstantiation, postProcessBeforeInstantiation, postProcessPropertiesインターフェース org.springframework.beans.factory.config.SmartInstantiationAwareBeanPostProcessor から継承されたメソッド
determineCandidateConstructors, getEarlyBeanReference, predictBeanType
コンストラクターの詳細
MethodValidationPostProcessor
public MethodValidationPostProcessor()
メソッドの詳細
setValidatedAnnotationType
「検証済み」のアノテーション型を設定します。デフォルトの検証済みアノテーション型はValidatedアノテーションです。この setter プロパティは、開発者が独自の(Spring 固有ではない)アノテーション型を提供して、クラスがメソッド検証を適用するという意味で検証されることになっていることを示すために存在します。
- パラメーター:
validatedAnnotationType- 目的のアノテーション型
setValidatorFactory
デフォルトの Validator を使用して、JSR-303 ValidatorFactory を検証メソッドに委譲するように設定します。デフォルトは、デフォルトの ValidatorFactory のデフォルトのバリデーターです。
- 関連事項:
setValidator
メソッドを検証するために委譲する JSR-303 バリデーターを設定します。デフォルトは、デフォルトの ValidatorFactory のデフォルトのバリデーターです。
setValidatorProvider
遅延初期化された Validator を設定して、メソッドを検証するために委譲します。- 導入:
- 6.0
- 関連事項:
setAdaptConstraintViolations
public void setAdaptConstraintViolations(boolean adaptViolations) ConstraintViolationEE をMethodValidationResultに適応させるかどうか。デフォルトでは
falseですが、違反があった場合にはConstraintViolationExceptionEE が発生します。trueに設定すると、代わりにメソッド検証結果を使用してMethodValidationExceptionが発生します。- 導入:
- 6.1
afterPropertiesSet
public void afterPropertiesSet()インターフェースからコピーされた説明:InitializingBeanすべての Bean プロパティを設定し、BeanFactoryAware、ApplicationContextAwareなどを満たした後、包含BeanFactoryによって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBeanのafterPropertiesSet
createMethodValidationAdvice
メソッド検証の目的で AOP アドバイスを作成し、指定された「検証済み」アノテーションのポイントカットを適用します。- パラメーター:
validator- Validator が使用するための Supplier- 戻り値:
- 使用するインターセプター (通常、
MethodValidationInterceptorまたはそのサブクラス) - 導入:
- 6.0