java 一般项目的文件 图片啊什么的都保存在哪里 如何获取 路径怎么写

java 一般项目的文件 图片啊什么的都保存在哪里 如何获取 路径怎么写

问题描述:

java web项目的文件放哪里 应该不是直接存项目里吧 比如淘宝 里面好多卖家宝贝的图片啊什么的 文件海量的大 都保存在哪里啊 如何获取

淘宝这种大的电商网站对图片处理速度要求非常快,所以上传图片绝对不会像普通web工程那样上传到工程的upload文件夹之下的,这样工程将变得无比庞大而且也不能实现分布式部署,所以这种方式是绝对不允许的,之前做过电商项目所以对图片上传有一定知晓,淘宝最初大概是将图片存在自己专门部署的应用服务器上面的,我们称储存文本、图片服务器为静态文件服务器,上传到图片服务器之后数据库会存储一个关于图片的src引用地址,通过这个地址是指向静态文件服务器图片所在的相对路径。这样就可以实现快速读取文件了,由于淘宝访问量很高且日均产生的图片以TB级计量,所以单纯的分布式文件服务器上传文件管理文件不能满足淘宝的业务需求了。淘宝针对大容量图片作出了一些优化和储存算法,淘宝架构师章文嵩先生就层负责这方面事务,如果想了解更多关于淘宝关于图片存储和处理相关东西可以关注章的微博文章,淘宝的实现简单就是这个原理。

静态文件,包括图片、视频、html、文件等,托管到第三方图床,又拍云、七牛、阿里oss等。在上传文件时就会让你设置好地址,而且这些图床都对图片及视频有相应的处理,可以非常简单的使用缩略图、图片压缩等

好像有个第三方,需要接别人的接口,专门存放照片,视频的。

前端资源文件(js/css),一般放在CDN上
图片,一般放在云上,比如阿里的图片云、七牛云存储

获取的话,你存储的时候会返回你访问地址

web项目的文件放 ,一般都是上传到你的服务器,

我们一般的web项目都是放在服务器上指定的路径下,但是框架不同上传的方式也不同

你可以访问你的头像用这个地址 http://avatar.csdn.net/C/4/4/1_qq_27836205.jpg
图片引用的写法是

上传的文件一般会有两种:
1:是放在服务器中web项目的一个文件夹下,这种方式适合一些临时文件,如果项目重新部署的话会将上传的文件清除(毕竟重新替换了一个工程);
2:放在服务器的一个目录下面比如说服务器的d盘啥的,这样新部署工程的时候文件不会被清除
3:存放在第三方的工程下,通过第三方的协议接口将文件上传到第三方服务器,如云端啥的。这样你的服务器压力就小的多,文件的存取都从第三方
根据url或者分布式获得
4:如果是你网站上的一些静态图片文件,这些你可以直接放到项目的根目录下,当然不能放在WEB-INF下,这个文件夹下的文件不允许直接访问。

保存在服务器上面,你可以在自己的电脑上安装一个虚拟机,虚拟机上安装centos,安装nginx,安装ftp,通过ftp上传到服务器中,当然你也可以买一个服务器。 

专门弄的图片文件夹,把图片都放在这个文件夹中,使用的时候使用File file=new File(文件夹目录)