我正在尝试使用基于Java的Spring MVC应用程序配置从WEB-INF读取属性文件。当我将属性目录放在src目录中并使用class:(ClassPathResource)时,我可以使这个工作。
我想将@ImportResource与file:(FileSystemResource)一起使用,当它位于WebContent或WEB-INF中时,它将从properties /或resources / properties /或/ properties /或/ resources / properties /读取
当我使用file时:我得到一个FileNotFoundException。
我试过移动属性目录并使用@ImportResource和“file:/properties/properties-config.xml”,“file:/WebContent/properties/properties-config.xml”和/ WEB-INF / properties / properties-config.xml“。
我在app-servlet.xml中映射并尝试了“file:/resources/properties/properties-config.xml”
这应该是直截了当的,并不罕见。但我找不到以这种方式获取属性文件的示例。
@ImportResource("file:/properties/properties-config.xml")
@Configuration
public class AppConfig {
protected final Log logger = LogFactory.getLog(getClass());
private @Value("#{v1Properties['v1.dataUrl']}") String dataUrl;
private @Value("#{v1Properties['v1.metaUrl']}") String metaUrl;
private @Value("#{v1Properties['v1.user']}") String v1User;
private @Value("#{v1Properties['v1.password']}") String v1Password;
@Bean
V1Config v1Config() {
V1Config v1Config = new V1Config();
v1Config.setDataUrl(dataUrl);
v1Config.setMetaUrl(metaUrl);
v1Config.setUserId(v1User);
v1Config.setPassword(v1Password);
return v1Config;
}
@Bean
ViewResolver viewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
resolver.setPrefix("/WEB-INF/jsp/");
resolver.setSuffix(".jsp");
return resolver;
}
}
答案 0 :(得分:3)
试试这个,
@ImportResource("classpath:properties-config.xml")