インターフェース BeanFactoryPostProcessor

すべての既知のサブインターフェース:
BeanDefinitionRegistryPostProcessor
すべての既知の実装クラス:
AspectJWeavingEnablerConfigurationClassPostProcessorCustomAutowireConfigurerCustomEditorConfigurerCustomScopeConfigurerDeprecatedBeanWarnerEventListenerMethodProcessorPlaceholderConfigurerSupportPreferencesPlaceholderConfigurerPropertyOverrideConfigurerPropertyPlaceholderConfigurerPropertyResourceConfigurerPropertySourcesPlaceholderConfigurer
関数インターフェース:
これは関数インターフェースであるため、ラムダ式またはメソッド参照の割り当てターゲットとして使用できます。

@FunctionalInterfaceSE public interface BeanFactoryPostProcessor
アプリケーションコンテキストの Bean 定義のカスタム変更を可能にし、コンテキストの基になる Bean ファクトリの Bean プロパティ値を適応させるファクトリフック。

アプリケーションコンテキストで構成された Bean プロパティをオーバーライドするシステム管理者向けのカスタム構成ファイルに役立ちます。このような構成のニーズに対応する、すぐに使用できるソリューションについては、PropertyResourceConfigurer とその具体的な実装を参照してください。

BeanFactoryPostProcessor は、Bean 定義と対話して変更することができますが、Bean インスタンスを変更することはできません。これを行うと、Bean のインスタンス化が早まり、コンテナーに違反し、意図しない副作用が発生する可能性があります。Bean インスタンスの相互作用が必要な場合は、代わりに BeanPostProcessor の実装を検討してください。

登録

ApplicationContext は、Bean 定義内の BeanFactoryPostProcessor Bean を自動検出し、他の Bean が作成される前に適用します。BeanFactoryPostProcessor は、ConfigurableApplicationContext を使用してプログラムで登録することもできます。

配列

 ApplicationContext で自動検出される BeanFactoryPostProcessor Bean は、PriorityOrdered および Ordered セマンティクスに従って順序付けられます。対照的に、ConfigurableApplicationContext を使用してプログラムで登録された BeanFactoryPostProcessor Bean は、登録順に適用されます。PriorityOrdered または Ordered インターフェースの実装を通じて表される順序付けのセマンティクスは、プログラムで登録されたポストプロセッサーでは無視されます。さらに、@Order アノテーションは BeanFactoryPostProcessor Bean については考慮されません。

導入:
06.07.2003
作成者:
Juergen Hoeller, Sam Brannen
関連事項:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    標準の初期化後に、アプリケーションコンテキストの内部 Bean ファクトリを変更します。
  • メソッドの詳細

    • postProcessBeanFactory

      void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException
      標準の初期化後に、アプリケーションコンテキストの内部 Bean ファクトリを変更します。すべての Bean 定義はロードされますが、Bean はまだインスタンス化されていません。これにより、先行初期化する Bean に対してもプロパティをオーバーライドまたは追加できます。
      パラメーター:
      beanFactory - アプリケーションコンテキストで使用される Bean ファクトリ
      例外:
      BeansException - エラーの場合