您的位置:首页 > 运维架构 > Tomcat

Tomcat文件上传路径问题

2015-12-03 12:10 381 查看
原文地址 http://www.zhihaoyu.com/article/69
之前我将上传的文件直接放在项目路径下
String root = ServletActionContext.getServletContext().getRealPath("/res");
这样的话在每次更新war包到tomcat的时候都会删除掉用户上传的文件,总不能每次更新时都用复制粘贴。
将文件上传路径分开无非是需要注意两个地方:
首先,用户访问资源url时,需要将用户访问地址关联到tomcat项目路径外的地址。
其次,文件写入的时候保存路径要变成相应的实际地址。
那么问题就好解决了:
更改tomcat 目录下的 service.xml配置文件,增加虚拟路径配置



当访问 http://localhost:8080/MyPlatform/photo/xxx.jpg或者是http://localhost:8080/MyPlatform/works/xxx.jar 的时候,tomcat就会把请求转发,去请求tomcat所在的物理机上的D盘下/usr/local/tomcat/res/photo下的文件.
接下来,文件写入,只需要把保存路径改了就行了
String root = ServletActionContext.getServletContext().getRealPath("../../res");

说到上传文件,对于我这种小型网站项目,把文件放在服务器磁盘,路径保存在数据库,另外只要注意处理文件命名,也不会出现重名覆盖的情况。


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: