int Activation和int ForgotPassword工作正常,但字符串变量返回null我需要AppSettings的静态类
@PropertySource("classpath:appSettings.properties")
public class AppSettings {
@Value("${Activation}")
private static int Activation;
@Value("${ForgotPassword}")
private static int ForgotPassword;
@Value("${CryptoSplit}")
private static String CryptoSplit;
@Value("${CryptoKey}")
private static String CryptoKey;
public static String getCryptoSplit() {
return CryptoSplit;
}
public static String getCryptoKey() {
return CryptoKey;
}
public static int getActivation() {
return Activation;
}
public static int getForgotPassword() {
return ForgotPassword;
}
}
的.properties
Activation=0
ForgotPassword=1
CryptoSplit=:OSK:
CryptoKey=TheBestSecretKey
答案 0 :(得分:0)
@Value()在bean的初始化时被调用,bean在初始化时不需要在初始化时被初始化,因此除非初始化bean,否则你将没有值
答案 1 :(得分:0)
Spring不支持{strong>静态字段上的@Value
注入。
您确定需要“AppSettings的静态类”吗?我怀疑这可能代表了对春天单身人士如何运作的误解。
但是,如果你真的需要“AppSettings的静态类”,那么你可以实现如下:
@Value("${CryptoKey}")
public void setCryptoKey(String cryptoKey) {
AppSettings.CryptoKey = CryptoKey;
}