インターフェース BeanRegistrationAotProcessor
- すべての既知の実装クラス:
AutowiredAnnotationBeanPostProcessor
、CommonAnnotationBeanPostProcessor
、ConfigurationClassPostProcessor
、InitDestroyAnnotationBeanPostProcessor
、PersistenceAnnotationBeanPostProcessor
- 関数インターフェース:
- これは関数インターフェースであるため、ラムダ式またはメソッド参照の割り当てターゲットとして使用できます。
RegisteredBean
インスタンスを処理することによって Bean 登録に貢献する AOT プロセッサー。BeanRegistrationAotProcessor
実装は、 "META-INF/spring/aot.factories" リソースまたは Bean として登録できます。
登録済みの Bean でこのインターフェースを使用すると、Bean とそのすべての依存関係が AOT 処理中に初期化されます。通常、このインターフェースは、依存関係が限定されており、Bean ファクトリライフサイクルの早い段階ですでに初期化されている BeanPostProcessor
などのインフラストラクチャ Bean でのみ使用することをお勧めします。このような Bean がファクトリメソッドを使用して登録されている場合は、必ず static
にして、それを囲むクラスを初期化する必要がないようにしてください。
AOT プロセッサーは、通常の実行時の動作を最適化された配置 (通常は生成されたコード) に置き換えます。そのため、このインターフェースを実装するコンポーネントはデフォルトでは提供されていません。このインターフェースを実装するコンポーネントを実行時に呼び出す必要がある場合は、isBeanExcludedFromAotProcessing()
をオーバーライドできます。
- 導入:
- 6.0
- 作成者:
- Phillip Webb, Stephane Nicoll
- 関連事項:
フィールドサマリー
方法の概要
修飾子と型メソッド説明default boolean
このプロセッサーに関連付けられた Bean インスタンスを AOT 処理自体から除外する必要があるかどうかを返します。processAheadOfTime
(RegisteredBean registeredBean) 指定されたRegisteredBean
インスタンスを事前に処理し、コントリビューションまたはnull
を返します。
フィールドの詳細
IGNORE_REGISTRATION_ATTRIBUTE
登録を処理しないことを示すためにBeanDefinition
上のset
になることができる属性の名前。- 導入:
- 6.2
- 関連事項:
メソッドの詳細
processAheadOfTime
指定されたRegisteredBean
インスタンスを事前に処理し、コントリビューションまたはnull
を返します。プロセッサーは、任意の手法を自由に使用して、特定のインスタンスを分析できます。ほとんどの場合、リフレクションを使用して、コントリビューションで使用するフィールドまたはメソッドを見つけます。コントリビューションは通常、AOT 最適化アプリケーションの実行時に使用できるソースコードまたはリソースファイルを生成します。
指定されたインスタンスがプロセッサーに関連していない場合は、
null
コントリビューションを返す必要があります。- パラメーター:
registeredBean
- 処理する登録済み Bean- 戻り値:
BeanRegistrationAotContribution
またはnull
isBeanExcludedFromAotProcessing
default boolean isBeanExcludedFromAotProcessing()このプロセッサーに関連付けられた Bean インスタンスを AOT 処理自体から除外する必要があるかどうかを返します。デフォルトでは、このメソッドはtrue
を返し、Bean を自動的に除外します。定義を記述する必要がある場合は、このメソッドをオーバーライドしてtrue
を返すことができます。- 戻り値:
- Bean を AOT 処理から除外する必要がある場合
- 関連事項: