学习java,挺好玩的呢

 

一、文件下载

  1、访问资源时响应头如果没有设置Context-Disposition,浏览器默认按照 inline值进行处理

    1.1 inline (浏览器自带功能,能显示就显示,不能显示就下载)

  2、只需要修改响应头中 Context-Disposition="attachment;filename=文件名"

    2.1 attachment 下载,以附件形式下载

    2.2 filename=值 就是下载时显示的下载文件名

  3、

    3.1、导入Apache的两个jar

     

     3.2、在jsp中添加超链接,设置要下载的文件

      3.2.1 在springmvc中放行 静态资源的files文件夹

  <body>
    <a href="download?filsname=a.txt">下载</a>
  </body>

    3.3、编写控制器方法

@Controller
public class DemoController {
        @RequestMapping("/download")
        public void download(String filsname,HttpServletResponse resp,HttpServletRequest req) throws IOException{
            设置响应流中文件进行下载
            resp.setHeader("Content-Disposition","attachment;filename="+filsname );
        把二进制流放入响应体中 ServletOutputStream os
= resp.getOutputStream(); String path = req.getServletContext().getRealPath("fils");  下载文件的文件夹 File file = new File(path,filsname); byte[] byteArray = FileUtils.readFileToByteArray(file);    Apache的工具类 os.write(byteArray); os.flush(); os.close(); } }

 

posted on 2018-12-24 11:56  axu521  阅读(184)  评论(0编辑  收藏  举报

<