Springboot下载静态资源-excel模板

最近项目中要用到上传员工信息,在填写员工信息,那么首先要定义模板且放在网站上,就要用到下载静态资源,一般情况下实现都是如下: 

1、获取模板的路径;(这里的路径经常会搞错)

2、创建该路径的输入流;

3、设置response的头文件格式;

4、将输入流中的内容写进response的输出流中;

public void downloadExcel(HttpServletResponse response,HttpServletRequest request) {
        try {
            //获取文件的路径
            String excelPath = request.getSession().getServletContext().getRealPath("/Excel/"+"xx.xls");
            String fileName = "xx.xls".toString(); // 文件的默认保存名
            // 读到流中
            InputStream inStream = new FileInputStream(excelPath);//文件的存放路径
            // 设置输出的格式
            response.reset();
            response.setContentType("bin");
            response.addHeader("Content-Disposition",
                    "attachment;filename=" + URLEncoder.encode("xx.xls", "UTF-8"));
            // 循环取出流中的数据
            byte[] b = new byte[200];
            int len;

            while ((len = inStream.read(b)) > 0){
                response.getOutputStream().write(b, 0, len);
            }
            inStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

但是你用了SpringBoot,那就是一句代码都不用敲,真是提高了开发效率,只需要把模板放在resources/static下,直接访问就可以下载,下边给出详细信息:

1、项目结构:

2、启动项目启动类:ExceldemoApplication;

3、在浏览器输入访问地址:http://localhost:8080/excel/xx.xlsx 并下载模板文件如下图所示:

猜你喜欢

转载自blog.csdn.net/weixin_42394615/article/details/82794296