当前位置:   article > 正文

springboot项目中的空文件下载和带有数据的文件下载_springboot空项目下载

springboot空项目下载

在springboot项目中做文件下载的时候,获取路径的方式与传统的SSM项目有一些不一样的地方;

        在传统的SSM项目中。所有的页面和静态资源都写在webapp目录里面,而webapp指向工程的contextPath,所以可以像类似于下面这样获取资源的绝对路径:

String path = request.getServletContext().getRealPath("templates") + File.separator + "report_template.xlsx"; 

        但是在springboot项目中,把静态资源都放在了resource目录下,springboot要找到resource目录下的资源时需要用到ClassPathResource类,类似与这样获取资源:

  1. ClassPathResource classPathResource = new ClassPathResource("templates/report_template.xlsx");
  2. InputStream inputStream =classPathResource.getInputStream();

做文件下载时有两种情况:

1、第一种直接让你下载一个空的模板文件或图片,不需要再后端进行数据处理,此时直接在前端用location.href="xxx的文件路径和"

2、第二种是给你一个空的模板文件,但是下载下来的文件里面是要有数据库的数据的,需要再后端进行数据处理,这时就需要再后端接口进行数据处理

        Controler接口中处理文件下载的主要步骤:

               1)获取需要填充到模板文件的数据,把数据填充到模板文件的指定位置(通过行和列来定位),读取模板文件的时候,文件路径不能出错(读取方法类似于上面的情况)

                2)获取输出流,通常是用

ServletOutputStream outputStream = response.getOutputStream();

                3)设置浏览器能解析的内容类型࿰

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/815956
推荐阅读
相关标签
  

闽ICP备14008679号