spring实现模板文件下载
Posted 当初的当初
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring实现模板文件下载相关的知识,希望对你有一定的参考价值。
前台
<form id="batchModel0" method="post" action="/common/download-file" target="downLoadFile"> <table> <tr> <td> <a href="#" id="downLoad">通过手机号码查询工号名称</a> <input type="hidden" id="remoteFileName" name="remoteFile" value="通过手机号码查询工号名称.xlsx"> <button class="btnTip " href="#execlNoteSJHM" name="mouldDetail" arrow="false" id="execlMouldSJHM" type="button" /> </td> </tr> </table> </form>
后台
@RequestMapping(value = "common/download-file") public void downloadFile(String remoteFile, HttpServletResponse response) { try { // excel模板路径, 此模板是直接放到项目的文件夹中即可 File file = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "resources/batch-excel/" + remoteFile); response.reset(); response.setContentType("application/octet-stream"); // 设置response中的文件内容 response.setHeader("Pragma", "No-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setHeader("Content-Disposition", "inline; filename=" + new String((remoteFile).getBytes("gb2312"), "ISO8859-1")); OutputStream os = response.getOutputStream(); InputStream is = new FileInputStream(file); try { byte[] bytes = new byte[1024]; while (is.read(bytes) > 0) { os.write(bytes); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { os.flush(); is.close(); os.close(); } } catch (IOException e) { e.printStackTrace(); } }
以上是关于spring实现模板文件下载的主要内容,如果未能解决你的问题,请参考以下文章
Spring boot:thymeleaf 没有正确渲染片段
Spring MVC 3.2 Thymeleaf Ajax 片段
spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象(代码片段