property-placeholder
次の要素を使用して、XML を介して Spring に登録しているプロパティ ファイルがあります。
<context:property-placeholder location="classpath:foo.properties" />
@Value
注釈を使用してプロパティにアクセスできます。
@Value("${prefs.key}")
private String prefValue;
ただし、Spring Environment を介してプロパティにアクセスする必要もあります。
@Autowired
private Environment env;
public String getValue(String key) {
return env.getProperty(key);
}
getValue()
here はnull
、プロパティ ファイルで定義されたキーの場合でも、常に を返します<property-placeholder>
。この方法でロードされたプロパティを強制的に環境経由でアクセスできるようにする方法はありますか?