解决方案 »

  1.   

    代码已经删除掉了。
    打包的过程是:
    1、从数据库中取得此用户已经选中的图片路径,放到 List 中
    2、遍历 list ,将每一个路径 new File() ,把这个 file 放到 File[] 数组中。
    3、调用打包方法,将 files 数组和 zip 文件的输出路径传入这个方法。
    4、遍历 files 数组,将每一个 file 都 new FileOutputStream(),然后调用 nextEntity ,用 zipOutputStream 输出到指定的 zip 文件路径。
    5、将 zip 文件创建成 BufferedOutputStream 发送给 response 让浏览器进行下载。其中的
    1 耗时1S
     2 - 4 步耗时17S左右。
    5 耗时4S
      

  2.   

    不打包不行吧   打包的话  要取决于CPU和硬盘了吧
      

  3.   

    就算是优化的话,我直接用本机的 Windows7 系统 360压缩去打包那些图片,也需要等待5-6秒,理想情况是,点击连接后在3秒内弹出下载对话框。优化的话,能达到这个程度吗?
      

  4.   

    不是吧,360 打包 100 MB 的图片也需要 5、6秒
    7zip 试试,需要多久
      

  5.   


    这是 360压缩的。在 zipOutputStream 中可以调整压缩速度吗?
      

  6.   

    如果你放弃 zip 下载,试试这个 jQuery 插件:
    https://github.com/biesiad/multiDownload