java 后台项目 上传文件放置路径

java项目传统的上传文件都会放到工程根目录建一个文件夹,放置上传的文件,但是多人发布或者使用自动化部署工具经常误操作或者忘记备份upload文件夹导致上传的图片、资料、视频等丢失;


1:传统的直接放上传文件到工程跟目录访问特别方便,但是服务器访问路径+文件的存放的相对路径就可以

<Context path="/safety/upload/" docBase="/Users/duandazhi/Desktop/"></Context>
 <!-- docBase可以是相对目录,相对目录是相对appBase -->
<Context path="/safety/upload/" docBase="../safetyUploadRoot/upload"></Context>
和webapp同目录,ueditor也在upload目录下面
注意上面的两个目录要提交建好,否则可能tomcat启动失败
2:写个互备的bat脚本 在windows下任务计划每天不定时的去执行
3:LemonOa上传的文件都在webapp外边,就是下载显示需要实现一个controller 
LemonOA目前就是定义了一个参数store.baseDir作为所有附件的根目录,然后读取都以这个目录为根,不同模块使用不同前缀区分,目录采用时间+uuid的方式避免重复,数据库里保存相对路径和文件名等元数据。
对,上传没有什么区别,但是下载和显示时需要controller,所以比放在webapp里麻烦
如果想做得更好,下载和显示时,还要处理fileName和content-type,所以工作量会多一些

;但是操作tomcat不谨慎在发布的时候容易丢失数据;

解决方法(在tomcat进行配置):

blog1Tomcat配置虚拟路径,使上传文件与服务器及工程文件分离开

blog 2  http://blog.csdn.net/j080624/article/details/54923785

blog3:  javaweb上传文件时在tomcat配置虚拟路径

blog4: http://www.cnblogs.com/love540376/p/4999616.html




百度UEditor 上传组件 使用虚拟路径映射配置【方法不好侵染代码】

解决ueditor上传文件到tomcat虚拟路径等问题【【好】】


Context path="/safety/upload/" docBase="/Users/duandazhi/Desktop/"></Context>
 <!-- docBase可以是相对目录,相对目录是相对appBase -->
<Context path="/safety/upload/" docBase="../safetyUploadRoot/upload"></Context>
和webapp同目录,ueditor也在upload目录下面
注意上面的两个目录要提交建好,否则可能tomcat启动失败
2:写个互备的bat脚本 在windows下任务计划每天不定时的去执行
3:LemonOa上传的文件都在webapp外边,就是下载显示需要实现一个controller 
LemonOA目前就是定义了一个参数store.baseDir作为所有附件的根目录,然后读取都以这个目录为根,不同模块使用不同前缀区分,目录采用时间+uuid的方式避免重复,数据库里保存相对路径和文件名等元数据。
对,上传没有什么区别,但是下载和显示时需要controller,所以比放在webapp里麻烦
如果想做得更好,下载和显示时,还要处理fileName和content-type,所以工作量会多一些



 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

猜你喜欢

转载自blog.csdn.net/ab601026460/article/details/73065393