プロパティに基づいてフィールドを自動配線する必要がありspring.profiles.active
ます。サービスはプロファイルに基づいてのみ作成されますが、サービスは他のクラスで自動配線されるため、@Profile アノテーションを使用できません。
プロファイルに基づいてフィールドを自動配線する方法はありますか?
プロパティに基づいてフィールドを自動配線する必要がありspring.profiles.active
ます。サービスはプロファイルに基づいてのみ作成されますが、サービスは他のクラスで自動配線されるため、@Profile アノテーションを使用できません。
プロファイルに基づいてフィールドを自動配線する方法はありますか?
プロファイルごとに異なるサービスの実装を作成できます。
以下の例では、mockito を使用して dataSource Bean をモックしました。
元。
@Configuration
@ComponentScan
class YourConfig {
@Profile("production")
@Qualifier("datasource")
@Bean
public DataSource dataSourceProduction(){
return new DataSourceProduction()
}
@Profile("development")
@Qualifier("datasource")
@Bean
public DataSource dataSourceDevelopment(){
return mock(DataSourceProduction.class);
}