(1)Test.class.getResource(""):得到当前生成的class的绝对路径(此方法在jar包中无效,由于他得到的是生成的class的路径,返回的内容最后包含/) java
(2)this.getClass().getClassLoader().getResource(""):方法得到相对路径(此方法在jar包中无效。返回的内容最后包含/) web
(3)System.getProperty():函数获取当前路径,获得项目文件夹的根目录,不带/ 函数
(4)File类:使用File提供的函数获取当前路径 this
File directory = new File("");//设定为当前文件夹 spa
try { get
System.out.println(directory.getCanonicalPath());//获取标准的路径 io
System.out.println(directory.getAbsolutePath());//获取绝对路径 class
} catch (Exceptin e) {} request
(5)web 项目中: 方法
request.getRealPath(""):根目录为web应用目录
request.getContextPath():返回相对于web应用根目录的路径
request.getSession().getServletContext().getRealPath("")
request.getServletPath(""):返回URI
经过java中的Object.class.getResource和getClass().getResource() 获取相应class文件所在的根目录
根目录:这里所指的根目录是以class文件对应包所在的目录。
例:
Class Test {
…
Public void Test() {
String rootPath1 = Test.class.getResource("");
String rootPath2 = this.getClass().getClassLoader().getResource("");
}
…
}