今天恰好有个上传文件的练习需要使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取上传到服务器上的文件路径 C:\\apache-tomcat-7.0.47\\webapps\\CommonhelloWorldServlet \\upload 的目录,结果获取到的是 D:\eclipseWorkSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\CommonhelloWorldServlet ,并不是运行时的工程存放目录,得到的反而是工作空间的项目存放路径,我觉得应该是配置的问题,经过百度之后,果然得出猜想没错,步骤如下:

1、先在编辑器界面将现有 servlet 删除,再双击旋转 tomcat 7.0 版本新建 servlet,结果如下图:
在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取不到 tomcat 服务器目录

发现配置如下图,解释了为啥获取到工作空间的路径了:

在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取不到 tomcat 服务器目录 

修改如下:

在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取不到 tomcat 服务器目录

运行代码,效果如下,正常了:

在servlet 中使用 request.getSession().getServletContext().getRealPath("upload/" ); 获取不到 tomcat 服务器目录 

相关文章:

  • 2021-06-20
  • 2021-04-30
  • 2021-11-26
  • 2022-12-23
  • 2022-02-07
  • 2022-12-23
  • 2021-08-29
  • 2021-12-22
猜你喜欢
  • 2021-09-17
  • 2022-12-23
  • 2021-09-24
  • 2021-05-11
  • 2021-11-18
相关资源
相似解决方案