学科分类
目录
Java Web

文件下载原理

对于文件下载,大家并不陌生,例如,在某网站下载图片,下载影片等等。现在很多网站都提供了下载各类资源的功能,因此在学习Web开发过程,有必要学习文件下载的实现方式。

由于实现文件下载功能比较简单,通常情况下,不使用第三方组件实现,而是直接使用Servlet类和输入/输出流实现即可。

可是,与访问服务器文件不同的是,要实现文件的下载,不仅需要指定文件的路径,还需要在HTTP协议中设置两个响应消息头,具体如下:

//设定接收程序处理数据的方式

Content-Disposition: attachment; filename =

//设定实体内容的MIME类型

Content-Type:application/x-msdownload

浏览器通常会直接处理响应的实体内容。这时我们需要在HTTP响应消息中设置两个响应消息头字段,指定接收程序处理数据内容的方式为下载方式,当点击“下载”超链接时,系统将请求提交到对应的Servlet。在该Servlet中,首先获取下载文件的地址,并根据该地址创建文件字节输入流,~~在~~再通过该流读取下载文件内容,最后将读取的内容通过输出流写到目标文件中。

点击此处
隐藏目录