クラス LocalValidatorFactoryBean
- 実装されたすべてのインターフェース:
ValidatorEE
、ValidatorFactoryEE
、AutoCloseableSE
、Aware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、SmartValidator
、Validator
- 既知の直属サブクラス
OptionalValidatorFactoryBean
jakarta.validation
(JSR-303)セットアップの中心的なクラスです。jakarta.validation.ValidationFactory
をブートストラップし、Spring Validator
インターフェースと、JSR-303 Validator
EE インターフェースおよび ValidatorFactory
EE インターフェース自体を介して公開します。Spring または JSR-303 Validator インターフェースを介してこの Bean のインスタンスと通信するときは、基礎となる ValidatorFactory のデフォルトの Validator と通信します。デフォルトのバリデーターをほとんど常に使用すると仮定すると、ファクトリでさらに別の呼び出しを実行する必要がないという点で、これは非常に便利です。これは、型 Validator
のターゲット依存関係に直接挿入することもできます。
このクラスは、jakarta.validation
API は存在するが明示的な Validator が構成されていない場合に、Spring の MVC 構成名前空間でも使用されます。
- 導入:
- 3.0
- 作成者:
- Juergen Hoeller, Sebastien Deleuze
- 関連事項:
コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明void
void
close()
void
destroy()
Bean の破棄時に、包含BeanFactory
によって呼び出されます。特定のエントリを追加またはオーバーライドするオプションを使用して、マップが Bean 検証プロパティへのアクセスを検証プロバイダーに渡すことを許可します。protected void
postProcessConfiguration
(ConfigurationEE<?> configuration) 指定された Bean 検証構成を後処理し、その設定を追加または上書きします。void
setApplicationContext
(ApplicationContext applicationContext) このオブジェクトが実行される ApplicationContext を設定します。void
setConfigurationInitializer
(ConsumerSE<ConfigurationEE<?>> configurationInitializer) カスタムLocalValidatorFactoryBean
サブクラスでpostProcessConfiguration(Configuration)
メソッドをオーバーライドする代わりに、Bean 検証Configuration
インスタンスをカスタマイズするためのコールバックを指定します。void
setConstraintValidatorFactory
(ConstraintValidatorFactoryEE constraintValidatorFactory) この ValidatorFactory に使用するカスタム ConstraintValidatorFactory を指定します。void
setMappingLocations
(Resource... mappingLocations) XML 制約マッピングファイルをロードするリソースの場所を指定します(ある場合)。void
setMessageInterpolator
(MessageInterpolatorEE messageInterpolator) この ValidatorFactory とその公開されたデフォルトバリデーターに使用するカスタム MessageInterpolator を指定します。void
setParameterNameDiscoverer
(ParameterNameDiscoverer parameterNameDiscoverer) メッセージの補間に必要な場合は、メソッドとコンストラクターのパラメーター名の解決に使用する ParameterNameDiscoverer を設定します。void
setProviderClass
(ClassSE providerClass) 必要に応じて、必要なプロバイダークラスを指定します。void
setTraversableResolver
(TraversableResolverEE traversableResolver) この ValidatorFactory とその公開されたデフォルトバリデーターに使用するカスタム TraversableResolver を指定します。void
setValidationMessageSource
(MessageSource messageSource) クラスパスの JSR-303 のデフォルトの "ValidationMessages.properties" バンドルに依存する代わりに、検証メッセージを解決するためのカスタム Spring MessageSource を指定します。void
setValidationProperties
(PropertiesSE jpaProperties) 検証プロバイダーに渡される Bean 検証プロパティを指定します。void
setValidationPropertyMap
(MapSE<StringSE, StringSE> validationProperties) 検証プロバイダーにマップとして渡される Bean 検証プロパティを指定します。void
setValidationProviderResolver
(ValidationProviderResolverEE validationProviderResolver) META-INF
による解決の代わりに、選択したプロバイダーをブートストラップするための JSR-303ValidationProviderResolver
EE を指定します。<T> T
必要な限りラップを解除して、指定された型の含まれているバリデータインスタンスを返します。クラス org.springframework.validation.beanvalidation.SpringValidatorAdapter から継承されたメソッド
determineErrorCode, determineField, forExecutables, getArgumentsForConstraint, getConstraintsForClass, getRejectedValue, getResolvableField, processConstraintViolations, requiresMessageFormat, supports, validate, validate, validate, validateProperty, validateValue, validateValue
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.validation.Validator から継承されたメソッド
validateObject
コンストラクターの詳細
LocalValidatorFactoryBean
public LocalValidatorFactoryBean()
メソッドの詳細
setProviderClass
必要に応じて、必要なプロバイダークラスを指定します。指定しない場合、JSR-303 のデフォルトの検索メカニズムが使用されます。
setValidationProviderResolver
META-INF
による解決の代わりに、選択したプロバイダーをブートストラップするための JSR-303ValidationProviderResolver
EE を指定します。- 導入:
- 4.3
setMessageInterpolator
この ValidatorFactory とその公開されたデフォルトバリデーターに使用するカスタム MessageInterpolator を指定します。setValidationMessageSource
クラスパス内の JSR-303 のデフォルトの "ValidationMessages.properties" バンドルに頼るのではなく、検証メッセージを解決するためのカスタム Spring MessageSource を指定します。これは、Spring コンテキストの共有 "messageSource" Bean を参照するか、検証目的のみの特別な MessageSource セットアップを参照する場合があります。注意 : この機能には、クラスパス上に Hibernate Validator 4.3 以降が必要です。それでも別の検証プロバイダーを使用することはできますが、Hibernate Validator の
ResourceBundleMessageInterpolator
クラスは構成中にアクセスできる必要があります。このプロパティまたは
"messageInterpolator"
の両方ではなく、どちらかを指定します。カスタム MessageInterpolator を構築したい場合は、補間器を構築するときに、Hibernate Validator のResourceBundleMessageInterpolator
から派生し、Spring ベースのResourceBundleLocator
を渡すことを検討してください。Hibernate のデフォルトの検証メッセージを引き続き解決するには、
MessageSource
をオプションの解決(通常はデフォルト)に構成する必要があります。特に、ここで指定されたMessageSource
インスタンスは"useCodeAsDefaultMessage"
の動作を適用しないでください。それに応じて設定を再確認してください。- 関連事項:
ResourceBundleMessageInterpolator
setTraversableResolver
この ValidatorFactory とその公開されたデフォルトバリデーターに使用するカスタム TraversableResolver を指定します。setConstraintValidatorFactory
この ValidatorFactory に使用するカスタム ConstraintValidatorFactory を指定します。デフォルトは
SpringConstraintValidatorFactory
であり、オートワイヤーされた ConstraintValidator インスタンスを作成するために、それを含む ApplicationContext に委譲します。setParameterNameDiscoverer
メッセージの補間に必要な場合は、メソッドとコンストラクターのパラメーター名の解決に使用する ParameterNameDiscoverer を設定します。デフォルトは Hibernate バリデーター独自の標準 Java リフレクションの内部使用です。これは、必要に応じて、カスタムサブクラスまたは Spring 制御の
DefaultParameterNameDiscoverer
でオーバーライドできます。setMappingLocations
XML 制約マッピングファイルをロードするリソースの場所を指定します(ある場合)。setValidationProperties
検証プロバイダーに渡される Bean 検証プロパティを指定します。文字列 "value" (PropertiesEditor で解析)または XML Bean 定義の "props" 要素を入力できます。
setValidationPropertyMap
検証プロバイダーにマップとして渡される Bean 検証プロパティを指定します。XML Bean 定義の「マップ」または "props" 要素を取り込むことができます。
getValidationPropertyMap
特定のエントリを追加またはオーバーライドするオプションを使用して、マップが Bean 検証プロパティへのアクセスを検証プロバイダーに渡すことを許可します。たとえば "validationPropertyMap [myKey]" を介してエントリを直接指定するのに便利です。
setConfigurationInitializer
カスタムLocalValidatorFactoryBean
サブクラスでpostProcessConfiguration(Configuration)
メソッドをオーバーライドする代わりに、Bean 検証Configuration
インスタンスをカスタマイズするためのコールバックを指定します。これにより、アプリケーションの目的で便利なカスタマイズが可能になります。インフラストラクチャ拡張機能は、
postProcessConfiguration(jakarta.validation.Configuration<?>)
テンプレートメソッドをオーバーライドし続ける可能性があります。- 導入:
- 5.3.19
setApplicationContext
インターフェースからコピーされた説明:ApplicationContextAware
このオブジェクトが実行される ApplicationContext を設定します。通常、この呼び出しはオブジェクトの初期化に使用されます。通常の Bean プロパティの設定後、ただし
InitializingBean.afterPropertiesSet()
またはカスタム init メソッドなどの init コールバックの前に呼び出されます。ResourceLoaderAware.setResourceLoader(org.springframework.core.io.ResourceLoader)
、ApplicationEventPublisherAware.setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher)
およびMessageSourceAware
の後に呼び出されます(該当する場合)。- 次で指定:
- インターフェース
ApplicationContextAware
のsetApplicationContext
- パラメーター:
applicationContext
- このオブジェクトによって使用される ApplicationContext オブジェクト- 関連事項:
afterPropertiesSet
public void afterPropertiesSet()インターフェースからコピーされた説明:InitializingBean
すべての Bean プロパティを設定し、BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
postProcessConfiguration
指定された Bean 検証構成を後処理し、その設定を追加または上書きします。ValidatorFactory
EE をビルドする直前に呼び出されます。- パラメーター:
configuration
- LocalValidatorFactoryBean のプロパティによって駆動される設定が事前に入力された構成オブジェクト
getValidator
- 次で指定:
- インターフェース
ValidatorFactoryEE
のgetValidatorEE
usingContext
- 次で指定:
- インターフェース
ValidatorFactoryEE
のusingContextEE
getMessageInterpolator
- 次で指定:
- インターフェース
ValidatorFactoryEE
のgetMessageInterpolatorEE
getTraversableResolver
- 次で指定:
- インターフェース
ValidatorFactoryEE
のgetTraversableResolverEE
getConstraintValidatorFactory
- 次で指定:
- インターフェース
ValidatorFactoryEE
のgetConstraintValidatorFactoryEE
getParameterNameProvider
- 次で指定:
- インターフェース
ValidatorFactoryEE
のgetParameterNameProviderEE
getClockProvider
- 次で指定:
- インターフェース
ValidatorFactoryEE
のgetClockProviderEE
unwrap
インターフェースからコピーされた説明:SmartValidator
必要な限りラップを解除して、指定された型の含まれているバリデータインスタンスを返します。- 次で指定:
- インターフェース
SmartValidator
のunwrap
- 次で指定:
- インターフェース
ValidatorEE
のunwrapEE
- 次で指定:
- インターフェース
ValidatorFactoryEE
のunwrapEE
- オーバーライド:
- クラス
SpringValidatorAdapter
のunwrap
- 型パラメーター:
T
- 返されるオブジェクトの型- パラメーター:
type
- 返すオブジェクトのクラス- 戻り値:
- 指定された型のバリデーターインスタンス。ネストされたバリデータがない場合は
null
。指定されたバリデーターの型が一致しない場合、例外が発生する可能性があります。
close
public void close()- 次で指定:
- インターフェース
AutoCloseableSE
のclose
- 次で指定:
- インターフェース
ValidatorFactoryEE
のcloseEE
destroy
public void destroy()インターフェースからコピーされた説明:DisposableBean
Bean の破棄時に、包含BeanFactory
によって呼び出されます。- 次で指定:
- インターフェース
DisposableBean
のdestroy