下面的代码来自:http://jrails.iteye.com/blog/1705464
读取jar包内配置文件:
- InputStream in = this.getClass().getClassLoader().getResourceAsStream("/configfilename.properties");
其中,特别要注意,路径前有一个"/",否则读不到文件的,自己曾因此查找了很久
读取jar包外配置文件:
- String filePath = System.getProperty("user.dir") + "/conf/configfilename.properties";
- InputStream in = new BufferedInputStream(new FileInputStream(filePath));
当在tomcat下编写测试代码测试时,发现 System.getProperty("user.dir")返回的时tomcat下的bin目录,这样显然时无法查找到文件的。因此考虑在工程启动时,将该变量指向工程所在目录,这样应该是可以查找到文件的(未测试)。但是感觉这样的解决方式比较麻烦,不知道是否有更简单的方式,能够按照相对路径进行查找文件