spring mvc配置完后实现下载功能

来源:互联网 发布:电脑测温软件 编辑:程序博客网 时间:2024/05/18 00:52
<pre name="code" class="java">[html] view plaincopy<%@ page language="java" contentType="text/html; charset=UTF-8"      pageEncoding="UTF-8"%>  <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  <html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">      <script type="text/javascript" src="js/jquery-1.4.4.min.js"></script>  <title>Insert title here</title>  </head>  <body>      <input id='fileName' type="text" name="fileName"/>      <a href="download.do" target="blank"><button>下载</button></a>  </body>  <script type="text/javascript">      $(function(){          $('a').click(function(){              var link=this.href+'?'+'fileName='+$('#fileName').val();              window.open(link);              return false;          });      });  </script>  </html>  前台填写要下载的文件,后台从文件夹里查找,如果没有文件则返回错误文件,否则则提供任意文件类型的下载(填写文件时必须写后缀)[java] view plaincopypackage hope.cs.zhku.controller;    import java.io.File;  import java.io.FileInputStream;  import java.io.FileNotFoundException;  import java.io.IOException;  import java.io.InputStream;  import java.io.OutputStream;    import javax.servlet.http.HttpServletResponse;    import org.springframework.stereotype.Controller;  import org.springframework.web.bind.annotation.RequestMapping;    /******************************************************************************  * 名称:UserBasicEditorController.java</br>  * 日期:2011-8-15</br>  * 功能:</br>  * 编写:Willson Huang</br>  * 复核:</br>  * 其他:</br>  * 历史:(说明,修改人,时间)</br>  * 1.create ,Willson Huang ,2011-8-15  *****************************************************************************/  @Controller  public class DownloadController {        @RequestMapping("download.do")      public void downloadFile(String fileName,HttpServletResponse response){          response.setCharacterEncoding("utf-8");          response.setContentType("multipart/form-data");            response.setHeader("Content-Disposition", "attachment;fileName="+fileName);          try {              File file=new File(fileName);              System.out.println(file.getAbsolutePath());              InputStream inputStream=new FileInputStream("file/"+file);              OutputStream os=response.getOutputStream();              byte[] b=new byte[1024];              int length;              while((length=inputStream.read(b))>0){                  os.write(b,0,length);              }              inputStream.close();          } catch (FileNotFoundException e) {              e.printStackTrace();          } catch (IOException e) {              e.printStackTrace();          }      }  }  


                                             
1 0
原创粉丝点击