zoukankan      html  css  js  c++  java
  • 文件下载—SSM框架文件下载

    1、准备上传下载的api组件

    <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
    </dependency> 
    <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.3.1</version>
        </dependency>
     
    2、编写前台上传表单
    <body>
    请点击下载:<a href="user/download?filename=moni.jpg">moni.jpg</a>
    </body>
     
    3、编写controller层(在conreoller层拼接附件名字和所在文件夹位置(path),创建输出流直接写入response中
      /**
             * 文件下载
             * @throws IOException 
             */
            @RequestMapping(value="/download",method=RequestMethod.GET)
            public void download(@RequestParam(value="filename")String filename,
                    HttpServletRequest request,
                    HttpServletResponse response) throws IOException {
                //模拟文件,myfile.txt为需要下载的文件  
                String path = request.getSession().getServletContext().getRealPath("statics\upload")+"\"+filename;  
                //获取输入流  
                InputStream bis = new BufferedInputStream(new FileInputStream(new File(path)));
                //转码,免得文件名中文乱码  
                filename = URLEncoder.encode(filename,"UTF-8");  
                //设置文件下载头  
                response.addHeader("Content-Disposition", "attachment;filename=" + filename);    
                //1.设置文件ContentType类型,这样设置,会自动判断下载文件类型    
                response.setContentType("multipart/form-data");   
                BufferedOutputStream out = new BufferedOutputStream(response.getOutputStream());  
                int len = 0;  
                while((len = bis.read()) != -1){  
                    out.write(len);  
                    out.flush();  
                }  
                out.close();  
            }

  • 相关阅读:
    MasterPage里使用TreeView保存状态功能
    JavaScript 如何将字符串转换为数值
    asp.net 样式GridView CSS的完整样式表
    CSS Frames LayoutsCSS框架
    Fix: .Net 2.0 or 3.5 Setup Project Requires .Net Framework version 4.0
    Design Pattern Resources
    Agile Method
    The Art of Debugging
    WPF Control Layout
    Getting Started With Setup Projects
  • 原文地址:https://www.cnblogs.com/domi22/p/8059759.html
Copyright © 2011-2022 走看看