三个配置文件位置如下:
a.properties在WebRoot目录下;
b.properties在src目录下;
c.properties在src下com.huawei.resources目录下
第一种:利用ServletContext读取。(使用限制:只能在web应用中用)
//a.properties在WebRoot目录下
String path = getServletContext().getRealPath("/a.properties");
//b.properties在src目录下
String path = getServletContext().getRealPath("/WEB-INF/classes/b.properties");
//c.properties在src下com.huawei.resources目录下
String path = getServletContext().getRealPath("/WEB-INF/classes/com/huawei/resources/c.properties");
第二种:利用ResourceBundle读取。(这里不能读到a.properties,且ResourceBundle只能读取properties的文件)
import java.util.ResourceBundle;
ResourceBundle rb = ResourceBundle.getBundle("b");
ResourceBundle rb = ResourceBundle.getBundle("com.huawei.resources.c");
rb.getString("");
第三种:类加载器读取。(只能读取classes或者类路径中的任意资源。但是不适合读取特别大的资源。)推荐使用!
this.getClass().getClassLoader().getResource("com/huawei/resources/c.properties").getPath();