System.getProperty("user.dir")
因为所有在java.io中的类都是将相对路径名解释为起始于用户的当前工作目录,所以应该清楚当前的目录。
可以通过调用System.getProperty("user.dir") 来获得。
Properties properties = new Properties();
String path = System.getProperty("user.dir") + File.separator + "conf" +
File.separator + “example.properties";
-------------------------------------------------------
properties.load(new FileInputStream(new File(path)));
...
erverHost = properties.getProperty("erverHost");
基于ClassLoder读取配置文件
注意:该方式只能读取类路径下的配置文件,有局限但是如果配置文件在类路径下比较方便。
转载:https://www.cnblogs.com/sebastian-tyd/p/7895182.html
Properties properties = new Properties();
// 使用ClassLoader加载properties配置文件生成对应的输入流
InputStream in = PropertiesMain.class.getClassLoader().getResourceAsStream("config/config.properties");
// 使用properties对象加载输入流
properties.load(in);
//获取key对应的value值
properties.getProperty(String key);
基于 InputStream 读取配置文件
注意:该方式的优点在于可以读取任意路径下的配置文件
Properties properties = new Properties();
// 使用InPutStream流读取properties文件
BufferedReader bufferedReader = new BufferedReader(new FileReader("E:/config.properties"));
properties.load(bufferedReader);
// 获取key对应的value值
properties.getProperty(String key);