2 qq 27875615 qq_27875615 于 2016.03.16 22:42 提问

关于eclipse j2ee下工程的部署时,tomcat下的本工程的文件夹被eclipse中的覆盖

图片说明是这样的,点击查看原图,这个upload是我在eclipse中建的,我在index.jsp中设置了一个文件上传,只要上传了我都保存到tomcat/webapp/工程名/upload(自己在硬盘上建的文件夹)这个路径下,每次上传文件后,在硬盘那个路径里面会有图片,但是eclipse中却没有图片。所以我重新把tomcat重启一次,但是工程reload后,硬盘里的upload文件夹下的图片也没了,好像是eclipse中的这个工程又重新覆盖了一次,所以硬盘upload里面的图片也没了,想请教下这个该如何解决。。。

2个回答

u011489205
u011489205   2016.03.16 23:00
已采纳

1.其实你的分析是正确的,每次发布新的代码都会将原来的文件删除。所以第一种方案就是每次发布的时候将原来的文件备份,部署完新的代码再将其
拷贝到原来的目录。但是这样会比较繁琐,但是是一种方案。
2.第二种方案就是实现项目和资源分离的思想,将upload目录放在项目之外,通过tomcat自身的配置实现简单的分离。在tomcat的server.xml配置文件中添加
如下配置项。

  <Context path="/upload/file" docBase="D:\upload\file"></Context>

这样访问图片的路径就会被重新定向到项目之外的路径。从某种意义上方便了项目的重新部署。
3.更好的方案,也是现在比较主流的方案,就是增加一台静态资源服务器,专门用来保存应用项目可能用的静态资源(比如图片资源,文件资源等),上传
接口直接指向远程的静态服务器路径,性能上减轻了应用服务器的压力,同时也免去了部署覆盖原先资源的担忧。

qq_27875615
qq_27875615 谢谢你!
接近 2 年之前 回复
qq_27875615
qq_27875615 恩,谢谢你!现在在学习中,就用采用第二种方案吧!
接近 2 年之前 回复
wenxuechaozhe
wenxuechaozhe   2016.03.16 23:02

楼上正解。建议使用第二种方案,存储到制定路径,缓解tomcat服务器压力

qq_27875615
qq_27875615 恩!谢谢!
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!