可以通过ServletContext上下文获取路径,如下
// 获得项目的路径
ServletContext sc = request.getSession().getServletContext();
logger.info(sc.getRealPath("/"));
不同的项目运行方式,得到的路径是不一样的,如
1)项目发布到Tomcat容器上,通过Tomcat容器跑,则打印的路径为
[INFO][2017-07-16 12:55:13][FileUploadController:34] - D:\Program Files\Tomcat6.0\webapps\MavenSpringMvcDemo\
2)项目通过Eclipse等IDE插件运行,以Eclipse为例子,打印的路径为
[INFO][2017-07-16 13:02:09][FileUploadController:34] - D:\EclipseWorkspace\MavenSpringMvcDemo\WebContent\