关于图片上传到服务器的调研

关于上传文件到服务器的思路或者是方法
1.将文件转成base64编码放在字段里面,像正常的http交互一样去访问服务器上传 

2.将文件写入流中上传

博客地址:https://blog.csdn.net/w18756901575/article/details/52451265

3. 图片当文件上传(multipart/form-data),然后存储于后台的静态目录,GET访问就好了。

是的,可以这样子。转为base64数据后就是一段字符串,POST上传就好了

但是一般不会采用这种方案,因为

(1). Base64要求把每三个8Bit的字节转换为四个6Bit的字节(38 = 46 = 24),然后把6Bit再添两位高位0,组成四个8Bit的字节,也就是说,转换后的数据理论上将要比原来的大1/3,消耗流量,浪费空间。
           

(2). 你转化为Base64之后怎么存储呢?存储在数据库吗?那又要多支付访问数据库的开销。存储为图片文件吗?那又要转换回来,也是增加了解析转换的开销。
           

(3).浏览器的兼容问题,IE 8 以下不支持 data urlIE 8 开始支持 data url,却有大小限制。

             所以,一般就是把图片当文件上传(multipart/form-data),然后存储于后台的静态目录,GET访问就好了;表单形式上传最简单了,谷歌一下有很多例子,在此就不多说了。

 

扫描二维码关注公众号,回复: 2578840 查看本文章

4. 将图片数据转为Blob对象,使用FormData上传文件

         移动端上传文件注意事项:https://segmentfault.com/a/1190000006140042

         Java上传操作集合https://www.jb51.net/Special/849.htm

5.  struts2上传文件

6. 

(1): 首先,在MySQL中创建了两个表,一个t_user表,用来存放用户名,密码等个人信息,一个t_touxiang表,用来存放上传的图片在服务器中的存放路径,以及图片名字和用户IDT_touxiang表中的用户ID对应了t_user中的id

(2):写一个UploadServlet.Java,用来处理图片文件的上传,并将图片路径,图片名称等信息存放到t_touxiang数据表中

(3):在完成图片上传并写入数据库的同时,将图片路径通过session的方式发送到HTML界面

(4):至此,图片上传数据库和本地服务器已经实现,那么如何在HTML界面显示出个人信息以及上传的头像呢?首先定义一个PersonServlet类,用来读取数据库的内容,并发送到HTML界面。

(5):在HTML界面接收信息,并显示出来

至此,一个基于Java的头像上传服务器,路径存储在MySQL,并在HTML界面读取出来的功能就基本实现了。头像上传之前进行处理等操作,可以选择一些插件来完成。这里只是简单的实现了基本功能。

参考博客:https://www.jb51.net/article/107000.htm

猜你喜欢

转载自blog.csdn.net/ty0903csdn/article/details/81239396