java项目客户上传的图片放到哪好

图片放到项目里,上传的多了会不会影响系统的运行速度?放在电脑硬盘上 页面又不能直接用绝对路径获取图片

图片上传一般考虑两种办法:1、上传到服务器,数据库中存储服务器上图片的相对路径;2、转换为二进制流存入到数据库中。现在常用的做法都是选择第一种,因为第二种太占数据库空间,而且查找读取效率不高。很多开源的文件上传框架(比如spring中的commons-fileupload)都是采用第一种方式。上传图片到服务器不会影响系统的运行速度,你可以选择将图片的目录建立在非系统盘,存储容量比较大的盘,如F盘等。注意图片名字不要重复,建议用uuid
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-22
可以放到服务器的硬盘里,也可以拿出来一个机器给一个固定IP,专门当文件服务器。
路径按照模块来,比如 D:\upload\message D:\upload\note 后面跟着文件名称,不会出现拿不到这种情况,路径的前面固定的d:\ 可以写到配置文件中,也可以存DB里,怎么做都可以本回答被网友采纳
第2个回答  推荐于2018-03-05
图片上传一般会上传到你服务器那个项目里,到底上传到你服务器项目那个位置可以自己指定,数据库存
路径就行了,用的时候直接读
路径追问

上传的图片太多 不会对系统有影响吧?

追答

会,所以一般都是放服务器里

追问

放到服务器,重启服务器图片就没了

追答

把图片存在服务器上,如果图片是和数据相关联的,要把图片的名字保存在数据库。图片还是不要存数据库好,太大了也压力的;放哪里了就看你服务器那边环境是怎么样的,如果没有什么集群的就在应用里加个文件来保存即可,如果有集群的考虑一下用FTP来保存图片文件。一般数据库里面不存图片的, 存放的是图片的路径。数据库可以记录一些必要的信息,比如文件的名称,类型(扩展名),大小,创建时间及谁的文件等等;如果把文件放入数据库,读写性能不如文件系统,还会加大数据库的压力。放到服务器上注意要设计好一个文件结构,不然以后一个文件夹里有成千上万个文件,打开那个文件夹就要好久,更不用说查找和下载了。一般是没有问题的

本回答被提问者采纳
第3个回答  2013-09-22
最好放在服务器的一个文件夹目录里,但要注意放在web-inf目录下,然后数据库表里对应保存文件存放路径就行了
第4个回答  2013-09-22
一般都是放到服务器的某个指定路径下,取的时候直接到路径下去取。千万不要保存到数据库里,数据库里一般保存图片的路径就行了。而关于图片过多的情况,如果图片不再有用,可以调用方法进行删除,以节余空间
相似回答