思路

1.根据数据库的图片存储表进行查询然后拿到图片路径

2.然后看项目中上传图片的路径进行下载

代码

 @RequestMapping(value = "/download",method = RequestMethod.GET )@RequiresPermissions("orderDetail:download")public void download(HttpServletResponse response, HttpServletRequest request,Integer orderDetailId){//响应头的设置response.reset();response.setCharacterEncoding("utf-8");response.setContentType("multipart/form-data");//设置压缩包的名字//解决不同浏览器压缩包名字含有中文乱码的问题HttpSession session = request.getSession();String billname ="workerCard";String downloadName=billname+".zip";//返回客户端浏览器的版本号、类型String agent = request.getHeader("USER-AGENT");try {//针对IE或者以IE为内核的浏览器处理if (agent.contains("MSIE")||agent.contains("Trident")){downloadName=java.net.URLEncoder.encode(downloadName, "UTF-8");}else {downloadName=new String(downloadName.getBytes("UTF-8"),"ISO-8859-1");}}catch (Exception  e) {e.printStackTrace();}response.setHeader("Content-Disposition","attachment;fileName=\"" + downloadName + "\"");//设置压缩流ZipOutputStream zip=null;try {zip=new ZipOutputStream(new BufferedOutputStream(response.getOutputStream()));//设置压缩方法zip.setMethod(ZipOutputStream.DEFLATED);} catch (IOException e) {e.printStackTrace();}DataOutputStream os=null;//从数据库中取出要下载的图片路径List<GoodsCustomizationImage> images = goodsCustomizationImageService.selectImgUrl(orderDetailId);System.out.println(orderDetailId);for (GoodsCustomizationImage image : images) {System.out.println(image);String filename=image.getLocalUrl();String[] split = filename.split(",");for (String s : split) {System.out.println(s);String modipath = path+s;File file = new File(modipath);System.out.println(file);if (file.exists()){//添加ZipEntry,并ZipEntry中写入文件流//这里,加上i是防止要下载的文件有重名的导致下载失败try {zip.putNextEntry(new ZipEntry(file.getName()));os=new DataOutputStream(zip);InputStream is = new FileInputStream(file);byte[]b= new byte [1024];int length =0;while ((length=is.read(b))!=-1){os.write(b,0,length);}is.close();//zip.closeEntry();} catch (IOException e) {e.printStackTrace();}}}//关闭流try {if (os!=null){os.flush();os.close();zip.close();}else {break;}} catch (IOException e) {e.printStackTrace();}}}

参考地址:java项目(ssm框架)实现批量下载图片并打包压缩为zip文件 - Somuns的个人空间 - OSCHINA - 中文开源技术交流社区

java 批量图片下载相关推荐

  1. Extreme Picture Finder(网络图片下载器)官方中文版V3.53.3 | 下载网页图片的软件 | 图片助手批量图片下载器

    Extreme Picture Finder 是一款功能强大的集网络图片下载器软件和网页视频下载软件于一体的综合性互联网素材采集工具,能帮助广大用户自动下载并保存几乎所有互联网上面的图像.视频.音乐以 ...

  2. java实现图片下载功能

    前端页面 <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8 ...

  3. 下载网页图片-如何批量下载网页图片-批量图片下载工具免费

    下载网页图片,今天给大家分享一款免费批量下载网页图片软件,支持任意格式的图片批量下载,只需要输入关键词或批量导入网页链接即可下载图片.批量下载任意网页上的图片,每个人都可以拥有各种高清图源.支持批量图 ...

  4. python3 批量图片下载小工具

    有一个朋友是做电商的,在运营的过程中,偶尔需要收集大量的图片,比如商品的主图.轮播图或者是评价中的图片等等.一张一张地下载图片,难免会比较繁琐且浪费时间.(下载地址在文章结尾) 图片地址是手动获取的, ...

  5. JAVA HttpClient 图片下载不全(坑点笔记)

    一定要这样写: int length = -1; while((length = in.read(buffer)) != -1) {out.write(buffer, 0, length); } 不要 ...

  6. java实现图片下载

    try { String filename="tt.jpg"; //当文件名不是英文名的时候,最好使用url解码器去编码一下, filename=URLEncoder.encode ...

  7. 使用下载工具internet download manager进行批量图片下载

    1.打开软件,选择站点抓取 2.输入方案名称,和页面地址,并选取方案模板 3.选择文件保存位置 4.根据需求进行配置 5.配置抓取方案 6.等着美女到你的硬盘即可

  8. 前端单张图片下载,批量下载图片成压缩包

    各位铁子们,博主最近手撕了一个图片管理模块,效果如下图所示,其中有个下载图片的功能,包含了单张图片下载,以及多张图片批量下载成压缩包,认为很有意思,分享给你们 首先我们需要引入对应的安装包如下 imp ...

  9. java 批量写入文件_Java批量写入文件和下载图片的示例代码

    很久没有在WhitMe上写日记了,因为觉着在App上写私密日记的话肯定是不安全的,但是想把日记存下来.,然后看到有导出日记的功能,就把日记导出了(还好可以直接导出,不然就麻烦点).导出的是一个html ...

最新文章

  1. LeetCode简单题之猜数字大小
  2. 使用Google 官方的控件SwipeRefreshLayout实现下拉刷新功能
  3. 机器学习模型的超参数优化 | 原力计划
  4. python中rfind函数_Python rfind()方法
  5. 人月神话阅读笔记之一
  6. Redux系列01:从一个简单例子了解action、store、reducer
  7. 找不到托盘菜单配置文件_随手在仓库捡的木托盘,简单改造一下,10件家具不用买了...
  8. Delta Lake在Soul的应用实践
  9. Mysql数据库简单使用(二)
  10. uml+oopc嵌入式c语言开发精讲_新的程序开发模式出现,传统的嵌入式C语言程序员快要灭绝了?...
  11. 解决重启VCSA 6.0,访问vsphere web client提示:503 Service Unavailable错误
  12. 对于未来chrome80 samesite问题的兼容解决方案
  13. 双机热备份VRRP当接入方式为PPPOE拨号的图文教程
  14. 非线性方程求根算法的C++实现
  15. C# Socket之TCPUDP
  16. c/c++ utf-8与gbk的互相转化
  17. aspen怎么做灵敏度分析_灵敏度分析 aspen
  18. vue-pdf vue中导入文件 并预览
  19. 2021全国特种设备-Q2起重机司机模拟考试题库一[安考星]
  20. word如何设置每一章节的页眉都不同

热门文章

  1. WP Smush Pro网站图片优化插件最新版免费下载
  2. 五分钟了解GRE是什么,四信GRE相关应用推荐
  3. Hadoop MapReduce编程 API入门系列之查找相同字母组成的字谜(三)
  4. linux驱动系列学习之Framebuffer子系统(三)
  5. java+代码实现+流星雨,js代码实现流星雨 - osc_zls6dx9i的个人空间 - OSCHINA - 中文开源技术交流社区...
  6. 信息技术发展的趋势是什么?
  7. 计算机鼠标不出现在电脑屏幕上,电脑开机屏幕上看不到鼠标箭头?
  8. Win11设置鼠标箭头图案的方法教程
  9. easymock模拟post接口请求数据
  10. 我天!中国科技原来有桎梏!道翰天琼认知智能机器人API平台接口为您揭秘。