JAVAEE工程获取Tomcat路径
package com.test.dir; import java.io.File; import java.io.IOException; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class TomcatDir extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println(System.getProperty("user.dir")); //D:\apache-tomcat-6.0.41\bin System.out.println(System.getProperty("catalina.home")); //D:\apache-tomcat-6.0.41 不建议使用,获取的是环境变量中tomcat的位置 HttpSession session = request.getSession(); ServletContext application = session.getServletContext(); String serverRealPath = application.getRealPath("/") ; System.out.println(serverRealPath); //D:\apache-tomcat-6.0.41\webapps\test2\ File f = new File(getClass().getResource("/").getPath()); f = new File(f.getPath().replace("%20"," ") + "/databasePool.conf"); System.out.println(f.getAbsolutePath()); //D:\apache-tomcat-6.0.41\webapps\test2\WEB-INF\classes\databasePool.conf String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; System.out.println(basePath); //http://localhost:8080/test2/ System.out.println(request.getContextPath()); // /test2 } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
输出结果:
D:\apache-tomcat-6.0.41\bin
D:\apache-tomcat-6.0.41 //不建议使用,获取到的是环境变量中tomcat的位置
D:\apache-tomcat-6.0.41\webapps\test2\
D:\apache-tomcat-6.0.41\webapps\test2\WEB-INF\classes\databasePool.conf
http://localhost:8080/test2/
/test2