示例代码如下:
public class GetPath extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
//第1种:获取服务器二进制命令路径
String path1 = new File("").getCanonicalPath();
("path1:" + path1);
//第2种:获取服务器二进制命令路径
String path2 = ("");
("path2:" + path2);
//第3种:获取项目的根目录
String path3 = getServletContext().getRealPath("");
("path3:" + path3);
//第4种:获取项目的根目录,但Servlet2.1以后已过期
String path4 = ("");
("path4:" + path4);
//第5种:获取类加载的根路径
String path5 = ().getContextClassLoader().getResource("").getPath();
("path5:" + path5);
//第6种:获取类加载的根路径
String path6 = ().getClassLoader().getResource("").getPath();
("path6:" + path6);
//第7种:获取类加载的根路径
String path7 = ().getResource("/").getPath();
("path7:" + path7);
//第8种:获取当前类的路径
String path8 = ().getResource("").getPath();
("path8:" + path8);
}
}
运行结果:
path1:D:\java\apache-tomcat-8.5.37\bin
path2:D:\java\apache-tomcat-8.5.37\bin
path3:D:\ROOT\
path4:D:\ROOT\
path5:/D:/ROOT/WEB-INF/classes/
path6:/D:/ROOT/WEB-INF/classes/
path7:/D:/ROOT/WEB-INF/classes/
path8:/D:/ROOT/WEB-INF/classes/com/gqzzw/