项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm
7.3.1小节进行演示了文件和对象的传输,接下来演示Spring MVC中的文件下载。
文件的下载是比较简单的,直接在页面中通过访问文件的超链接也可以直接下载文件。但是如果文件名为中文名,可能在某些早期的浏览器会导致乱码,从而下载失败。
Spring MVC提供了ResponseEntity类型,可以很方便的定义返回头和返回文件名以及状态码等信息。
在FileController中增加下载方法。接来下直接看Controller类提供的下载文件方法,如代码清单7-27所示。
代码清单7-27:Controller层的下载方法
/** * 如果出现大文件,会OOM。 * 会出现java.lang.OutOfMemor 谙忆 认证博客专家 Java 公众号:程序编程之旅。曾经写过C、C++,使用过Cocos2dx开发过游戏、安卓端、IOS端、PC端页面均开发过。目前专注Java开发,SaaS内核、元数据的研究。偶尔玩玩爬虫