К предотвращение повторяющихся инъекций одного и того же значения, делающего поле нестатичным в классе, который создается очень часто, я предпочел создать простой Singleton ConfigUtil в качестве обходного пути:
package de.agitos.app.util;
import org.springframework.beans.factory.annotation.Configurable;
import org.springframework.beans.factory.annotation.Value;
/**
* Helper class to get injected configuration values from static methods
*
* @author Florian Sager
*
*/
@Configurable
public class ConfigUtil {
private static ConfigUtil instance = new ConfigUtil();
public static ConfigUtil getInstance() {
return instance;
}
private @Value("${my.value1}") Integer value1;
public Integer getValue1() {
return value1;
}
}
Внутри класса я пытался сначала ввести значение как статическое целое число:
private static Integer value1 = ConfigUtil.getInstance().getValue1();