以本产品的上传商品图片为例,它包含了”上传图片后的预览”、”清空预览图片”、”保存图片"三个部分。上传图片后,先将图片文件临时存放到session中,如果需要保存图片,再从session中获取到文件并保存到服务器。
1、 上传图片预览
上传图片预览实现了上传图片,并且在页面显示图片,此时还没有在服务器完成修改操作:
(1) 上传图片HTML代码。
(2) 上传图片js代码。
使用到了Layui框架的upload模块。upload.render函数设置请求后端的url、允许的图片类型、图片大小等信息:
(3) 后端接收前端传递的图片。
使用了Spring的MultipartFile来接收上传的图片文件:
(4) 清空session中的商品图片信息。
上传的图片文件还有它应存放的位置信息我们是把它们存放在session当中的,所以如果之前有上传过,需要先清空:
(5) 检查文件的类型、大小。
(6) 检查磁盘的空间大小。
(7) 设置图片的存放位置。
(8) 定义图片的临时名称。
根据文件的类型定义文件的临时名称pictureName,如temp12345.jpg:
(9) 根据存放位置构建File对象。
(10) 将图片信息保存在session中。
(11) 前端效果图。
2、 保存图片
(1) 更新数据库图片位置信息。
从session中获取图片文件位置信息,设置商品对象图片位置,最后更新数据库对应商品的图片位置字段:
(2) 从session中拿到MultipartFile file文件对象。
(3) 判断磁盘是否已经有该图片文件,如果有则删除。
(4) 将上传的图片保存到磁盘中。
(2) 清空图片后端代码,清空session中的图片信息。
新建p.xml,配置映射,path 为虚拟目录 docBase 为实际目录:
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/java-jiao-cheng/16218.html