Я столкнулся с этой проблемой: у меня есть класс с переменной @Value, объявленной как статическая, как показано.Когда мое приложение запускает @PostConstruct для доступа к методу этого класса, найдите мою переменную с нулевым значением.
Если я вызову этот класс после выполнения de @PostConstruct, я вижу, что статическая переменная @Value имеет видне нуль, и он имеет правильное значение.
Как я мог иметь эту переменную с ее реальным значением в выполнении @PostConstruct?
Это мой код:
@Component
public class ValidacionesUtils {
public static String variable;
@Value("${access.to.my.variable}")
public void setVariable(String variable) {
this.variable = variable;
}
@PostConstruct
private void init() {
if (variable==null) {
log.error("This is what my application prints");
} else {
log.error("This is not printed");
}
}
}