我试图在spring mvc应用程序的控制器中以编程方式访问某些属性。我用xml配置它。我尝试了PropertyPlaceholderConfigurer
和<context:property-placeholder />
我尝试在控制器类中使用(在一个工作示例中看到它但是它配置了@Configuration
):
@Inject
private Environment environment;
然后我使用:
environment.getProperty("upload.location")
但我得到一个空值。该条目存在于属性文件中(我只有一个),并且在xml作品中也使用${...}
答案 0 :(得分:3)
一种更简单的方法 - 使用@Value
注入系统属性,如下所示:
private @Value("${systemPropertyFoo}") String systemPropertyFoo;
在你的情况下(我假设变量是系统属性):
private @Value("${upload.location}") String uploadLocation;
此注释取决于PropertyPlaceholderConfigurer
,因此请将其保留在配置中。