前台:

<button type="button" onclick="downloadMould()" style="float: right;margin-right: 20px;" class="btn btn-info">模板下载</button>

js:

function downloadMould(){alert("下载模板");window.open( "./addRepairDevice/downloadExcel");//跳转后台的路径
}

后台方法:

@RequestMapping(value = "/downloadExcel")@ResponseBodypublic void downloadExcel(HttpServletResponse res, HttpServletRequest req) throws Exception {String fileName = "repairDeviceModel.xls";ServletOutputStream out;res.setContentType("multipart/form-data");res.setCharacterEncoding("UTF-8");res.setContentType("text/html");String filePath = getClass().getResource("/static/doc/" + fileName).getPath();//文件在项目中的存放路径String userAgent = req.getHeader("User-Agent");if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {fileName = java.net.URLEncoder.encode(fileName, "UTF-8");} else {// 非IE浏览器的处理:fileName = new String((fileName).getBytes("UTF-8"), "ISO-8859-1");}filePath = URLDecoder.decode(filePath, "UTF-8");res.setHeader("Content-Disposition", "attachment;fileName=" + fileName);FileInputStream inputStream = new FileInputStream(filePath);out = res.getOutputStream();int b = 0;byte[] buffer = new byte[1024];while ((b = inputStream.read(buffer)) != -1) {// 4.写到输出流(out)中out.write(buffer, 0, b);}inputStream.close();if (out != null) {out.flush();out.close();}}

springboot中下载模板功能相关推荐

  1. java: springboot+elementui导出功能模板

    java: springboot+elementui导出功能模板 前端代码: 1.js公共方法 /*** 导出Excel调用公共方法* @param url 导出Excel的业务接口地址* @para ...

  2. SpringBoot集成邮箱功能并使用Knife4j测试

    SpringBoot集成邮箱功能并使用Knife4j测试 哔哩哔哩链接:https://www.bilibili.com/video/BV1uA411N7cm 1.获取163或QQ邮箱授权码 163邮 ...

  3. Springboot总结,核心功能,优缺点

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:lizmit https://blog.csdn.net/q ...

  4. 为 springboot 添加 debug功能

    两种运行方式 springboot 的项目(组建)有两种方式. 直接运行java application (main class: 被@SpringBootApplication 注解那个) 运行ma ...

  5. springboot集成邮箱功能

    1. 写在前面 我们都知道,如果系统出现预警,或者有一些监控需求,我们可以通过发送短信或者邮件来进行通知,本篇文章呢,我就打算来讲解一下SpringBoot的邮件服务.我们都知道发送邮件应该是网站的必 ...

  6. SpringBoot 使用AOP功能

    RPC,AOP都会用到代理,代理的技术有jdk的Proxy代理(必须实现接口),cglib(可以不实现接口,直接实现类),Javassist(jboss )而Spring boot本身也在方方面面使用 ...

  7. springboot和springcloud功能详细介绍

    一. 什么是springboot 1.用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件) 2.创建独立的spring引用程序 main方法运行 ...

  8. 基于springboot实现注册功能发送激活码至邮箱激活账户登录

    文章目录 激活原理 运行说明(重点) 实例演示(重点) 代码说明 项目结构图 准备工作 emailactivate项目详细代码 common UUIDUtils config DruidDbConfi ...

  9. Vue+SpringBoot实现评论功能

    目录 前言 难点 实现思路 数据表设计 数据传输格式设计 前端递归显示 删除评论 前言 评论系统相信大家并不陌生,在社交网络相关的软件中是一种常见的功能.然而对于初学者来说,实现一个完整的评论系统并不 ...

最新文章

  1. 汉印标签打印机app_旅行一族福音 汉印CP4000L便携照片打印机体验
  2. IntelliJ IDEA搭建一个web项目含配置tomcat
  3. 深度学习与计算机视觉(三)最优化与梯度下降
  4. postgresql(2)
  5. Jmeter 抓app包 抓到一半不好用了
  6. 股市心态决定成败:不贪不惧不急不赌
  7. window10本地解析域名
  8. Elasticsearch增删改查 之 —— Delete删除
  9. 基于 vue + zhengAdmin 的一套后台模板
  10. 抽象类,接口,魔术方法
  11. IntelliJ IDEA创建Java-Web项目
  12. 毕设题目:Matlab三维装箱
  13. [2018.10.15 T1] 或
  14. 【软件设计师中级】设计模式之原型模式学习笔记(c++)
  15. 服务器怎么改成gpt分区支持,硬盘mbr分区更改成gpt分区的方法
  16. 将有朋自远方来,不亦乐乎
  17. 如何查询SCI和EI检索号
  18. “第一股”争夺战:每日优鲜、叮咚买菜及美菜网谁能杀出重围?
  19. 集米社浅谈下那些令网兼者疯狂的时代。
  20. 【2019.07.09】java 二维数组、将二维数组传递给方法

热门文章

  1. 紫金桥linux组态软件如何创建快捷图标
  2. C++函数指针、函数对象与C++11 function对象对比分析
  3. 解决命令行运行python文件,出现No module named *** 报错问题
  4. Hexo主题之livemylife个性化构建你的博客
  5. hwd分别是长宽高_奥德赛尺寸长宽高是多少
  6. 支持avi mkv的html视频插件,轻型智能云存储 N2家庭云盘探索区块链新路径
  7. stm32l0的停止模式怎么唤醒_小米小爱同学新增支持播放网易云音乐,语音唤醒覆盖更多机型...
  8. 学生档案管理项目总结(一)——困难重重
  9. 大学毕业工作后的感悟
  10. 2023美团春招4.8 后端真题和解析 第一题:换座位