java.lang.class.getResource
静态块,在项目启动的时候就执行,是主动执行的。
静态方法, 是被动执行的,需要被调用才执行。
static{
try {String path = Config.class.getResource("/").toURI().getPath();
is = new FileInputStream(path + "config.properties");
properties = new Properties();
properties.load(is);
} catch (Exception e) {
logger.error("系统配置文件”config.properties“未找到。");
e.printStackTrace();
}
}
System.out.println(TestClassResource.class.getResource(""));
System.out.println(TestClassResource.class.getResource("/"));
System.out.println(TestClassResource.class.getClassLoader().getResource(""));
}
file:/D:/WorkSpace/Tests/WebRoot/WEB-INF/classes/com/java/base/
file:/D:/WorkSpace/Tests/WebRoot/WEB-INF/classes/
Class.getResource("") 返回的是当前Class这个类所在包开始的为置
Class.getResource("/") 返回的是classpath的位置
getClassLoader().getResource("") 返回的是classpath的位置
getClassLoader().getResource("/") 错误的!!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。