文件下载---工具类

public class Util {//定义日志对象private Logger logger = Logger.getLogger(Util.class);@RequestMapping("downfile")public void downFile(HttpServletRequest request,HttpServletResponse response,String fileNname) throws IOException {// 根据文件名称|文件路径获取 上下文的路径地址String realPath = request.getServletContext().getRealPath(fileNname);// 获取文件的长度File file = new File(realPath);long fileLength = file.length();// 获取文件名称String name = file.getName();logger.info("文件名称*******"+name);// 设置响应类型response.setHeader("Content-Type", "application/octet-stream");// 设置下载的类型的长度response.setHeader("Content-Length", String.valueOf(fileLength));// 设置以下载方式使用response.setHeader("Content-Disposition","attachment;filename*=utf-8'zh_cn'" + URLEncoder.encode(name, "UTF-8"));// 获取下载流对象ServletOutputStream os = response.getOutputStream();// 缓冲输出流BufferedOutputStream bos = new BufferedOutputStream(os);// 下载文件的缓冲输入流BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));// 定义的缓冲区byte buffer[] =new byte[1024];// 定义读取的长度int len=0;// 循环读取while((len=bis.read(buffer))!=-1) {// 写入到响应的流中bos.write(buffer, 0, len);}bis.close();bos.close();os.close();}
}

页面调用

<a class="btn btn-info" href="${pageContext.request.contextPath}/util/downfile?fileNname=${l.url}">下载</a>

文件下载---ajax文件下载相关推荐

  1. SpringBoot ajax文件下载实现

    实现Ajax文件下载可以从后台直接返回一个Base64编码格式的文件,在前台用JS的atob()方法直接转为Blob格式的数据,然后创建一个A标签,来下载它. 前台 JS function doAja ...

  2. Php ajax 动态 下载,jQuery动态实现ajax文件下载

    这次给大家带来jQuery动态实现ajax文件下载,jQuery动态实现ajax文件下载的注意事项有哪些,下面就是实战案例,一起来看一下.// Ajax 文件下载 jQuery.download = ...

  3. 动态提交使用jQuery 完成ajax 文件下载

    2019独角兽企业重金招聘Python工程师标准>>> 查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! // Ajax 文 ...

  4. java文件下载文件损坏_Springboot实现文件下载,文件下载后损坏

    场景描述 使用Springboot实现了一个文件下载的功能,代码如下 String fileName = "template.xls"; res.setHeader("C ...

  5. jQuery ajax 文件下载

    一般上文件下都会使用 window.location.href='xxx' //文件路径或者 后台接口地址 但有时候要传递参数给后台就需要 window.location.href='xxx?name ...

  6. 前后端分离 AJAX 文件下载解决方案

    [场景描述] 微服务架构中,使用前后端分离设计,用户点击导出下载Excel列表,通过AJAX与后端SpringMVC交互获取下载文件,请求需要携带Authorization认证信息,并且需要考虑到IE ...

  7. node_上传文件multer+上传文件Ajax+文件下载

    非原创 本文转自https://github.com/a415432669/-front_end_notebook/tree/master/Node/day6/%E6%96%87%E6%A1%A3 一 ...

  8. ASP.NET MVC 文件上传和文件下载 以及 文件下载的几种方法

    1.序言 最近项目中需要用到这个功能点,但是网上下载的时候总是出现乱码.所以趁着这个时间自己整理出了一份,以后需要的时候就直接看自己的博客就行了.已经测试过:在谷歌.火狐.IE等浏览器上都不会出现乱码 ...

  9. php 打开任意文件下载,TEC-004-php文件下载任意文件读取漏洞修复

    修改download?u参数值,将/public/files/14842030529.txt,替换为../../../../../../../../../../etc/passwd function ...

最新文章

  1. win7完美兼容DynamipsGUI(小凡模拟器)攻略
  2. python pandas DataFrame 修改数据
  3. 计算机中文无敌版,奥特曼格斗进化3中文无敌版电脑版
  4. spring二:装配bean(自动装配)
  5. 快速排序C实现(阿里巴巴 2012年全国校招笔试题)
  6. JavaScript绑定键盘事件的多种写法
  7. NPOI 将DataGridView导出到Excel
  8. spring学习(29):xml配置规范
  9. mysql数据库索引 分区_数据库设计 – 要索引的列太多 – 使用mySQL分区?
  10. 细数被程序员吐糟的9大困难(转)
  11. 搭搭云配置系统概述-表单
  12. 1.3寸OLED 12864 sh1106带中文字库液晶屏介绍
  13. GoLang之Go 语言与鸭子类型的关系(1)
  14. 【渝粤题库】陕西师范大学 《道德教育案例研究》作业
  15. 1374:铲雪车(snow)——欧拉回路
  16. keil5的暗色配色方案
  17. 基于51单片机的秒表系统设计(源代码+Proteus仿真图)
  18. 油漆算法问题_不同类型的油漆(以及何时使用它们)
  19. 2019年除夕夜的有感而发
  20. SCI论文投稿到接收的时间

热门文章

  1. 《陆蓉的行为金融学》学习笔记及总结和应用
  2. 模板方法--之办理银行卡
  3. 为什么数字化转型,必须是“一把手”工程?
  4. 注册表计算机性能设置怎么应用,手把手教你windows系统优化设置-系统操作与应用 -亦是美网络...
  5. css 文字超出省略号 ... 代替
  6. Schtasks系统计划任务示例
  7. 蓝桥平方怪圈 JAVA
  8. 朴素贝叶斯分类器原理解析与python实现
  9. 通俗易懂的MySQL事务及MVCC原理,我先收藏了!
  10. artdialog html4,artDialog根本使用