Sobes.tech
Senior
60

Co jsou Spring profily a jak nakonfigurovat aplikaci pro různá prostředí? Jak ovlivnit proces vytváření beanů?

Společnosti byly požádány
СБЕРСБЕР

Odpověď od AI

sobes.tech AI

Spring Profiles позволяют разделять конфигурацию приложения для разных сред (например, dev, test, prod). Это удобно для управления настройками и создания бинов, специфичных для окружения.

Чтобы использовать профили:

  • В application.properties или application.yml можно задать настройки для конкретного профиля, например application-dev.properties.
  • Активировать профиль можно через параметр запуска: -Dspring.profiles.active=dev или в переменных окружения.

Для влияния на создание бинов используют аннотации:

@Configuration
@Profile("dev")
public class DevConfig {
    @Bean
    public MyBean myBean() {
        return new MyBean("dev config");
    }
}

@Configuration
@Profile("prod")
public class ProdConfig {
    @Bean
    public MyBean myBean() {
        return new MyBean("prod config");
    }
}

Таким образом, в зависимости от активного профиля, Spring создаст соответствующие бины. Это позволяет гибко менять поведение приложения без изменения кода.