前台

  

<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实现模板文件下载的更多相关文章

  1. Spring Boot实现文件下载功能

    我们只需要创建一个控制器(Controler)文件,即Controller目录下的File_Download.java,其完整目录如下: @Controller public class File_D ...

  2. Spring JDBC模板类—org.springframework.jdbc.core.JdbcTemplate(转)

    今天看了下Spring的源码——关于JDBC的"薄"封装,Spring 用一个Spring JDBC模板类来封装了繁琐的JDBC操作.下面仔细讲解一下Spring JDBC框架. ...

  3. Spring配置文件模板

    模板: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://ww ...

  4. Spring MVC 的文件下载

    在看Spring MVC文件下载之前请先看Spring MVC文件上传 地址:http://www.cnblogs.com/dj-blog/p/7535101.html 文件下载比较简单,在超链接中指 ...

  5. Spring 事务模板

    最近项目开发中需要用到单机事务,因为项目中使用了Spring和Mybatis框架,所以通过Spring来进行事务的管理,并且记录一下事务配置的过程 第一步:配置DataSource <!-- 发 ...

  6. 【Spring实战】—— 15 Spring JDBC模板使用

    前一篇通过对传统的JDBC的使用操作,可以体会到使用的繁琐与复杂,套句话说,是用了20%作了真正的工作,80%作了重复的工作. 那么通过本篇,可以了解如下的内容: 1 如何配置数据源 2 如何在spr ...

  7. IDEA中使用spring官方模板+@Controller

    视图层处理http请求用@Controller时,要配合模板的使用,模板类似javaweb中的jsp,但是模板的引擎用的是 thymeleaf ,但是并不推荐. 现在的开发模式都是前后端分离,做后端只 ...

  8. Spring AOP Example 文件下载:

      文件下载:http://files.cnblogs.com/wucg/spring_aop_excise.zip P:124 spring核心技术 P225: spring doc 可以把Advi ...

  9. Spring MVC实现文件下载

     下载文件① 下载文件需要将byte数组还原成文件. 首先使用mybatis将数据库中的byte数组查出来,指定文件名(包括格式).然后使用OutputStream将文件输入 @RequestMapp ...

随机推荐

  1. 工作总结 js 选择器选择多条元素 支持一起设置他们属性 $("#edumes input[type='radio']").prop("checked", false);

    $("#edumes input[type='radio']").prop("checked", false); $("#edumes input[t ...

  2. android 不同进程间的调用 AIDL 实现通讯服务

    android 不同进程间的调用  AIDL 实现通讯服务       近期对aidl android 不同进程间的调用,不同运用间的调用做了一些尝试: 过程例如以下: 1:首先在要被调用的程序里写好 ...

  3. Selenium 工具介绍、安装、配置及使用

    概念 selenium是一款跨平台开源工具,用于web的功能完整性測试,想做压力測试的能够换软件了 先看一眼官方站 http://docs.seleniumhq.org/download/ 首先要FQ ...

  4. Java类加载机制?

    深入研究Java类加载机制 类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指导开发者采取更有效的措施配合程序执行. 研究类加载机制的第二个目的是让程序能动态的控制类加载,比 ...

  5. B. Flag of Berland

    B. Flag of Berland time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  6. Ubuntu上配置Eclipse:安装CDT【转】

    本文转载自:http://www.linuxdiyf.com/linux/23519.html 在最新的 Ubuntu Kylin 16.04 中安装了eclipse,在纠结了很久的网络问题之后,开始 ...

  7. 如何正确使用log4j

      如何正确使用log4j? 关键字: 如何正确使用log4j? Java Web开发的过程中,通过会采用输出log的方式来进行调试,产品上线之后,也通常使用log来记录系统的运行状态.最简单的输出l ...

  8. 如何编写linux下nand flash驱动-2

    [Nand Flash引脚(Pin)的说明] 图3.Nand Flash引脚功能说明 上图是常见的Nand Flash所拥有的引脚(Pin)所对应的功能,简单翻译如下: 1.       I/O0 ~ ...

  9. WebRTC PeerConnection

    PeerConnection 是WebRtc native interface 最外层的模块,  通常来说, 用户使用Peerconection就可以构建最简单的p2p 应用.     下面的UML里 ...

  10. hdu3092

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3092 题目描述:将一个数拆分成几个数之和,问这几个数能得到的最大的最小公倍数模上给定的一个数是多少? ...