在javaee项目中使用tomcat,因为每次tomcat重新部署后都会清空webapp下的缓存,导致我们上传的文件或图片在重新部署后会消失,如果不能及时备份数据,后果严重。
我们想到了上传文件不在tomcat的webapp的目录下就可以保持数据不会清除,所有用到了软连接(soft link),在window环境下symbolic link 就是软连接。
在这里它的作用就是将我们的web项目直接联系到windows,即把上传的文件放入我们的windows目录中,而不是tomcat的webapp目录中,下面是具体做法:
首先,找到web项目对应的tomcat 修改config文件中的 context.xml,添加 <Context allowLinking = "true">,
然后 找到我们要上传的目录,在这里我是H:\eclipseWork\Dragon\WebContent\upload ,
之后以管理员身份进入cmd ,执行 命令:,
这样,只要把文件上传到H盘的upload中,
相应的web目录中就会存在上传的文件,这里的upload文件内容不会随着tomcat的重新部署消失。(上传文件后记得refresh整个项目,这样就能得到想要的图片)
最后声明:此方法只是用于测试使用,仅为本人分享,至于软连接,硬链接需要各位看官自行熟悉。。。