文件下载案例

一、需求分析

 其中,浏览器可以直接解析图片,不能解析视频,所以视频的超链接是下载;

加载文件,则需要知道文件的真是路径(ServletContext);

前端:

 二、代码实现

 

 其中,ServletOutputStream字节流会自动刷新,即自动将缓冲区的数据持久化到真实文件流中,不用手动刷新和关闭,servlet服务结束会自动销毁;

三、解决文件乱码问题

1、原因是因为不同的浏览器编码不一样,版本不同兼容性也不同;

解决方法是根据请求头判断浏览器,设置对应的响应;

2、代码实现

 这是根据不同的浏览器的请求头信息和含中文的文件名参数列表的工具类;

原文地址:https://www.cnblogs.com/wmqiang/p/11595272.html