Sobes.tech
Назад к вопросам
Junior — Middle
85

Каким образом можно внедрять свойства из application.properties в бин в Spring?

Компании, где спрашивали
DCloud

Ответ от нейросети

sobes.tech AI

В Spring свойства из файла application.properties можно внедрять в бины несколькими способами:

  1. Аннотация @Value — позволяет внедрять отдельные значения по ключу:
@Component
public class MyBean {
    @Value("${my.property}")
    private String myProperty;

    // геттеры, методы
}
  1. Использование @ConfigurationProperties — позволяет связать группу свойств с классом, удобно для структурированных настроек:
@Component
@ConfigurationProperties(prefix = "my")
public class MyProperties {
    private String property;
    // геттеры и сеттеры
}

И в application.properties:

my.property=значение
  1. Через Environment — можно получить свойства программно:
@Autowired
private Environment env;

public void someMethod() {
    String value = env.getProperty("my.property");
}

Чаще всего для простых случаев используют @Value, а для групп связанных настроек — @ConfigurationProperties.