每次当需要获取javaWeb的路径时,都需要花那么些时间调试。
都需要用request相关的对象。
但总是本地成功了, 却有时候在服务器上就行不通,
因为很多时候服务器上得出的路径是转发嗠器的路径。
那么, 在任何Java类中,使用
public class MainTest extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println(this.getClass().getClassLoader().getResource("").getPath()); } }
比如在windows中,结果为:/E:/Tomcat/idea/apache-tomcat-7.0.65/webapps/ROOT/WEB-INF/classes/
在Linux中,结果为: /app01/tomcat_psdspay_9797/webapps/ROOT/WEB-INF/classes/
都能得到相对应的绝对路径。
然后我们截取到/WEB-INF/classes/之前的路径,就是WebRoot的路径了。
然后需要再定位的话,就可以在此基础上加就OK了。