使用springMVC实现文件上传和下载之文件下载
来源:互联网 发布:诺德软件 编辑:程序博客网 时间:2024/04/20 19:58
接上一篇,文件下载需要获取下载文件的存储路径,这里只是手动填入,如果是在具体项目中,可以把文件名和上传后的存储路径保存在数据库中。然后增加一个文件列表的页面展示文件名和文件路径,然后点击下载的时候把相应的文件名和路径传到后台操作。
/** * 文件下载,需要文件名和文件地址 * * @author:tuzongxun * @Title: download * @param@param name * @param@param path * @param@return * @param@throws IOException * @returnResponseEntity<byte[]> * @date Apr 28,2016 1:21:32 PM * @throws */ @RequestMapping(value = "/downLoadFile.do") public ResponseEntity<byte[]> download(@RequestParam("name") String name, @RequestParam("filePath") String path) throws IOException { File file = new File(path); HttpHeaders headers = new HttpHeaders(); String fileName = new String(name.getBytes("UTF-8"), "iso-8859-1");// 为了解决中文名称乱码问题 headers.setContentDispositionFormData("attachment", fileName); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file), headers, HttpStatus.CREATED); }
Html页面,这里只是简单的填写文件名和文件路径,用form表单提交到后台,然后后台会控制response在页面弹出保存文件路径的选择框,当然了,这里的后台我没有做什么处理,如果文件不存在是会报错的,可以进行相应的处理:
文件下载: </br> </br> <form action="./downLoadFile.do"style="border:1px solid grey;width:auto;" method="post"> 文件名:<input type="text" name="name"/></br></br> 文件路径:<input type="text" name="filePath"/></br></br> <input type="submit" value="确认下载"/> </form>
页面视图如下:
如果文件不存在,报错如下:
0 0
- 使用springMVC实现文件上传和下载之文件下载
- 使用springMVC实现文件上传和下载之环境配置与上传
- 使用springMVC实现文件上传和下载之环境配置与上传
- springMVC实现文件的上传和下载
- springmvc实现文件上传和下载
- SpringMVC 实现文件上传和下载
- SpringMVC实现文件的上传和下载
- springmvc实现文件上传和下载
- SpringMVC之文件上传/下载
- SpringMVC文件上传和下载
- SpringMvc文件上传和下载
- springmvc文件上传和下载
- SpringMVC文件上传和下载
- Springmvc文件上传和下载
- springMVC文件上传和下载
- SpringMvc文件上传和下载
- springMVC上传和下载文件
- 【SpringMVC】SpringMVC之文件上传/下载
- Allegro 中Assembly_Top 、Silkscreen_Top、Autosilk_Top 的区别
- INSTALL_FAILED_SHARED_USER_INCOMPATIBLE的问题解决
- Python web —— webbrowser + feedparser 网络爬虫刷博器
- 使用ThinkPHP框架快速开发网站(多图)
- Android手机开启开发者模式
- 使用springMVC实现文件上传和下载之文件下载
- Carthage使用记录
- mysql中IN,OR,BETWEEN性能比较
- PAT-B 1015. 德才论
- Java 建造模式实例
- Android本地数据的存储和读取(文件格式)
- HDU-4612-Warm up(无向图缩点+直径)
- UVA 11988 Broken Keyboard 链表
- 查看Windows 10系统是否永久激活