日期:2014-05-17  浏览次数:20637 次

java web servlet+jsp文件上传问题,上传图片到项目中
想做一个用户注册,上传头像的的功能,现在想上传图片到项目的"项目名/WebContent/images",我用的工具是eclipse3.7,没想到图片上传后跑到
"eclipse保存目录/.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\项目名\images" 
目录下去了
而我就是想要知道怎么报图片上传后能到"eclipse保存目录/项目名/WebContent/images"里去
如何获取到这个路径("eclipse保存目录/项目名/WebContent/images")并上传

请高手指教,在此先谢过了

------解决方案--------------------
在servlet中用this.getServletContext().getRealPath("/")可以得到你的WEB项目的根目录

你也可以打印出来这个路径看看 ,,

上传图片 其实是获取当前WEB服务器的 真实路径的
------解决方案--------------------
上传文件就是上传到服务器的啊...
------解决方案--------------------
LZ我知道你的意思 你现在需要改一下项目部署时的路径 步骤如下:
1.启动服务器,然后将服务器中的项目清空。
2.双击服务器会打开一个配置的文件,修改 Server Locations下为Use tomcat installation ...(原为 Use workspace metadata...), 再修改 Deploy path 为 webapps(原为 wtpwebapps),最后点关闭弹出提示是否保存 点yes
3.再吧项目添加到服务器中,部署启动 这样就把项目发布到外面的tomcat文件下了


好了 再说下LZ上传的问题 因为我也是用的eclipse 所以eclipse每次部署发布项目时有个现象,它会将上一次部署的所有内容删除,然后在重新部署,这样我就碰到了个问题:我上传文件时保存路径指向的是tomcat中部署的文件内,我每次修改项目重新部署发布就会把我之前上传的文件全不清掉了,所以我现在想让上传的文件保存到 我的项目/webcontent/upload 下 但我不知道怎么保存进去 求解~~~~~~~~~~~~~~~~~~~~~~~~~~
------解决方案--------------------
楼主 你说的那个".metadata 是你每次发布 都会新生产的,你的项目名/WebContent/images 在".metadata 也会生产的
------解决方案--------------------
是否想上传后,服务器下指定路径存在这个文件,而且当前项目也有这个文件?
我之前也这么做过,直接写死当前项目路径,上传成功后,再复制一份到我的项目中.这...我现在没搞清楚我当时为什么想这样做....

Java code

当前所在的JAVA类名称.class.getClassLoader().getResource("").toString().replace("file:/", "").replace("%20", " ");   //得到在发布后的位置.

------解决方案--------------------
this.getServletContext().getRealPath("/")