@TargetSE(valueSE=TYPESE) @RetentionSE(valueSE=RUNTIMESE) @DocumentedSE @Configuration @TestComponent public @interface TestConfiguration
@Configuration
。通常の @Configuration
クラスとは異なり、@TestConfiguration
の使用は @SpringBootConfiguration
の自動検出を妨げません。SpringBootTestContextBootstrapper
修飾子と型 | オプションの要素と説明 |
---|---|
boolean | proxyBeanMethods Bean ライフサイクル動作を実施するために、 @Bean メソッドをプロキシするかどうかを指定します。 |
StringSE | value この構成クラスに関連付けられている Spring Bean 定義の名前を明示的に指定します。 |
@AliasFor(annotation=org.springframework.context.annotation.Configuration.class) public abstract StringSE value
Configuration.value()
を参照してください。@AliasFor(annotation=org.springframework.context.annotation.Configuration.class) public abstract boolean proxyBeanMethods
@Bean
メソッドをプロキシするかどうかを指定します。ユーザーコードで直接 @Bean
メソッドを呼び出した場合でも、共有シングルトン Bean インスタンスを返します。この機能には、実行時に生成される CGLIB サブクラスを介して実装されるメソッドのインターセプトが必要です。これには、構成クラスやそのメソッドが final
の宣言を許可されないなどの制限があります。 デフォルトは true
で、構成クラス内の「Bean 間の参照」と、この構成の @Bean
メソッドへの外部呼び出しを許可します。別の構成クラスから。この特定の構成の @Bean
メソッドのそれぞれが自己完結型であり、コンテナー使用のための単純なファクトリメソッドとして設計されているため、これが必要ない場合は、CGLIB サブクラス処理を回避するためにこのフラグを false
に切り替えます。
Bean メソッドのインターセプトをオフにすると、@Configuration
以外のクラスで宣言された場合と同様に、@Bean
メソッドが個別に効果的に処理されます(別名: 「@Bean Lite モード」(@Bean's javadoc
を参照)。@Configuration
ステレオタイプを削除するのと同じ動作になります。
@Bean
メソッドをプロキシするかどうか