[英]How can I read resources file from outside project directory?
如果文件位置是资源文件夹,下面的代码可以正常工作,但是当文件位置在项目目录之外时,如 (c:\file.json),它会失败。 我们如何从外部项目目录加载文件。
@Bean
public UserInfo readFile() {
String fileName="prop.json";
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
File file = new File(classLoader.getResource(fileName).getFile());
try {
UserInfo info= new ObjectMapper(new JsonFactory()).readValue(file, UserInfo.class);
} catch (Exception e) {
}
return info;
}
您应该创建一个实现WebMvcConfigurer的配置 class 并覆盖addResourceHadndler方法以将新资源添加到 spring 上下文。
@Configuration
@EnableWebMvc
public class MvcConfig implements WebMvcConfigurer{
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
// register you resource here
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.