列举了2种方式,第一种是绝对路径,就是写死路径,不推荐
第二种是相对路径,使用到了ClassLoader
package com.StadyJava.day22; import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Properties; public class LoadResourceDemo {
public static void main(String[] args) throws Exception{
test2();
}
//方式1,写死路径。这种方式可以读取文件的内容。但是不要使用这种方法,没有路径是写死的
public static void test1() throws Exception{
Properties p=new Properties();
InputStream inStream=new FileInputStream("F:\\Study Java\\ch1helloworld\\src\\main\\resources\\properties");
p.load(inStream);
System.out.println(p);
}
//方式2,采用相对路径。相对于Classpath的根路径。ClassLoader就是src文件夹下,resources文件夹一般放资源文件,比如配置文件
public static void test2() throws Exception{
Properties p=new Properties();
//ClassLoader loader=LoadResourceDemo.class.getClassLoader();这种方式也可以获取ClassLoader,但是写出了类名,不推荐
ClassLoader loader=Thread.currentThread().getContextClassLoader();
InputStream inStream=loader.getResourceAsStream("properties");
p.load(inStream);
System.out.println(p);
} }