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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java项目客户上传的图片放到哪好相关的知识,希望对你有一定的参考价值。

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

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

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

追答

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

追问

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

追答

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

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

请教各位问题:java web客户端上传图片到服务器的D盘下,请问客户端怎么通过http访问图片

图片目录不在项目路径下。

如果想让tomcat服务器访问指定磁盘 上的静态资源,可在tomcat/conf/server.xml中查找<Host></Host>,在标签中添加如下标签<Context path="/file" docBase="D:/img" reloadable="true"/>,再通过localhost:8080/file地址来访问路境内的文件:
如要访问名为d:/img/cat.png的图片,则localhost:8080/file/cat.png
参考技术A 图片目录不在项目路径下,直接通过HTTP访问不到,如果你硬是要这么访问,你可以自己写一个Servlet,通过流的方式输出,注意要吧Content-Type设置正确

以上是关于java项目客户上传的图片放到哪好的主要内容,如果未能解决你的问题,请参考以下文章

在本地能运行 java项目,放到服务器上之后,在服务器本地和外网都不能访问该项目。

java上传图片的图片为啥在tomcat下,我想存在项目的upload下

Java web项目从eclipse上移动到tomact服务器上,之路径更改,包括显示图片和导出excel

请教各位问题:java web客户端上传图片到服务器的D盘下,请问客户端怎么通过http访问图片

求助:java web开发实现截图,客户机截取本机图片,上传到服务器

文件上传有两种方式upload