アノテーションインターフェース ImportRuntimeHints
@TargetSE({TYPESE,METHODSE})
@RetentionSE(RUNTIMESE)
@DocumentedSE
public @interface ImportRuntimeHints
1 つ以上の
RuntimeHintsRegistrar
実装を処理する必要があることを示します。META-INF/spring/aot.factories
を使用して RuntimeHintsRegistrar
を宣言するのとは異なり、このアノテーションを使用すると、アノテーション付きのコンポーネントまたは Bean メソッドが実際に Bean ファクトリに登録されている場合にのみ処理される、より柔軟な登録が可能になります。この動作を説明するために、次の例を検討してください。
@Configuration public class MyConfiguration { @Bean @ImportRuntimeHints(MyHints.class) @Conditional(MyCondition.class) public MyService myService() { return new MyService(); } }
上記の構成クラスが処理される場合、MyCondition
が一致する場合にのみ MyHints
が提供されます。条件が一致しない場合、MyService
は Bean として定義されず、ヒントも処理されません。
@ImportRuntimeHints
は、Spring TestContext フレームワークを使用して ApplicationContext
をロードする任意のテストクラスにも適用できます。
複数のコンポーネントまたはテストクラスが同じ RuntimeHintsRegistrar
実装を参照する場合、レジストラは、特定の Bean ファクトリ処理またはテストスイートに対して 1 回だけ呼び出されます。
- 導入:
- 6.0
- 作成者:
- Brian Clozel, Stephane Nicoll
- 関連事項:
必須定数のサマリー
要素の詳細
value
ClassSE<? extends RuntimeHintsRegistrar>[] value処理するRuntimeHintsRegistrar
実装。