getResource()返回:URL
getResourceAsStream () 返回的是inputstream,需要定义一个InputStream接收
1 通过本类的class类加载
Main.class.getResource("resourcefile"))
注意
path不以’/'开头时,默认是从此类所在的包下取资源;
path 以’/'开头时,则是从ClassPath根下获取;
同个包下,直接文件名
不同包下使用相对路径
2 通过本类的classloader 加载
根目录下可以直接写文件名,包下需要带包名Main.class.getClassLoader().getResource("path/to/package/resourcefile"))
3、通过ClassLoader的getSystemResource(),路径和2一致
ClassLoader.getSystemResource()
4、通过Thread方式,路径和2一致(推荐此种),
Thread.currentThread().getContextClassLoader()