有些文件不需要配置,只需要放到resources下面

今天和一位同事探讨了一个问题,开始的时候我事先的读取某个映射文件是配置在applicationContext.xml的bean定义里面;但是他提出来,是否可以不需要配置呢?直接作为一个资源文件完事,这样测试联调部署都方便。确实,如果一个文件的作用只是存一些数据,并且一般不变,那么完全可以放到配置里面(放到src/main/resources下面);然后可以通过下面的代码来获取里面数据。
InputStream is = this.getClass().getClassLoader().getResourceAsStream(mappingFilePath);
InputStreamReader isr = new InputStreamReader(is, "UTF-8");
BufferedReader br = new BufferedReader(isr);
while ((thisLine = br.readLine()) != null) {
    String[] strs = thisLine.split("::");
    String requestPath = strs[0].toLowerCase();
    String serviceName = strs[1];
    this.mapping.put(requestPath, serviceName);
}
this.getClass().getClassLoader().getResourceAsStream是到classpath下面找到对应的文件,并形成流。
原文地址:https://www.cnblogs.com/xiashiwendao/p/8999067.html