Ель всего, public static
не- final
поля зло .Spring не позволяет вводить в такие поля по какой-либо причине.
Ваш обходной путь действителен, вам даже не нужен метод получения / установки, поле private
достаточно.С другой стороны попробуйте это:
@Value("${my.name}")
public void setPrivateName(String privateName) {
Sample.name = privateName;
}
(работает с @Autowired
/ @Resource
).Но чтобы дать вам несколько конструктивных советов: создайте второй класс с полем private
и получателем вместо поля public static
.