使用Eclipse做文件上传时候的路径问题(Eclipse项目部署路径问题)

第一次写博客,写的不好请不要见怪。使用Eclipse做文件上传时候的路径问题(Eclipse项目部署路径问题)

这几天用eclipse和Tomcat以及SpringMVC做文件上传的时候遇到了一些问题,这里写一篇文章记录一下解决方法。

想法:把上传的文件保存到当前项目中的upload文件夹下(这种想法存在问题,另一篇文章会做解释)

做法:首先要导入commons-fileupload和commons-io的jar包。然后在Controller类中作文件上传的处理,在做处理的时候需要获取存放文件的文件夹,我最开始的时候使用的是request.getRealPath("/upload")方法来获取存放文件的路径,但是在执行的时候发现这文件路径不是我想要的文件路径,而是一串我从来都没有见到过的路径,这个时候我首先想到的是方法用的不对,后来在网上找了别的获取路径的方法,但是结果都是一样的并不是自己想要的路径,这就让我很郁闷了。

后来想去tomcat的webapps文件夹中看看项目的部署情况,当我进到webapps目录中的时候突然发现并没有我所部署的项目,这就让我更郁闷了。怎么办呢?查资料呗,在网上查了查资料发现原来eclipse并没有将我所发布的项目部署到Tomcat的webapps中,而是把我发布的项目部署到了eclipse“克隆”webapps目录得到的一个目录中,而我一直获取的路径就是这个克隆的到文件夹的路径。在eclipse中的servers视图中双击tomcat,打开tomcat页面中的Server Location选项,发现了我一直获取到的那个路径

使用Eclipse做文件上传时候的路径问题(Eclipse项目部署路径问题)

那么要怎么改变eclipse部署项目的路径呢?

如下图所示,可以使用tomcat的安装目录,然后把下面Deploy path改成webapps,也可以使用第三项自定义目录

注意:如果Server Location为灰色的不可选,那么可以移除已经部署的项目或者把tomcat移除重新添加进行尝试。

使用Eclipse做文件上传时候的路径问题(Eclipse项目部署路径问题)