Giriş
Şu satırı dahil ederiz.
Örnek
Şöyle yaparız. Aynı bean'i yaratan metod isimleri farklı olmalı!
Şöyle yaparız.
Şöyle yaparız. Burada profile ve !profile kullanımına dikkat.
Birden fazla değer vermek için şöyle yaparız.
Şu satırı dahil ederiz.
import org.springframework.context.annotation.Profile;
Açıklaması şöyle. Yani profil etkin ise bean'ler yaratılır.If we want Spring to use the @Component class or the @Bean method only when a specific profile is active, we can mark it with @Profile. We can configure the name of the profile with the value argument of the annotation:
Bir başka açıklama şöyle
Any @Component, @Configuration or @ConfigurationProperties can be marked with @Profile to limit when it is loaded.
Açıklaması şöyle
You can use an exclamation mark prefix for the profile which means all other profiles except the one that is mentioned. @Profile("!dev")
Örnek
Şöyle yaparız
@Component
@Profile("!dev")
public class ProductsComponent {
// ...
}
Övalue Alanı
Şöyle yaparız. Aynı bean'i yaratan metod isimleri farklı olmalı!
@Configuration
public class ConfigurationUtil {
@Bean
@Profile("apple")
Fruit apple(){
return new Apple();
}
@Bean
@Profile("banana")
Fruit banana(){
return new Banana();
}
}
Örnek - SpELŞöyle yaparız.
@Service
public class BackgroundTaskService {
@PostConstruct
@Profile("!test")
public void startTask() {
// ...
}
}
Örnek - SpELŞöyle yaparız. Burada profile ve !profile kullanımına dikkat.
@Configuration
class MyConfig {
@Profile("profile")
@Bean
MyBean myBean(MyBeanProperties properties) {
return new MyBean(properties);
}
@Profile("!profile")
@Bean
// note different method name
MyBean otherBean(MyBeanProperties properties, AdditionalProperties addProps) {
MyBean result = new MyBean(properties);
result.addAdditionalProperties(addProps);
return result;
}
}
Örnek - SpELBirden fazla değer vermek için şöyle yaparız.
@Profile({"devel", "test"})
Hiç yorum yok:
Yorum Gönder