zoukankan      html  css  js  c++  java
  • 利用springboot 重定向到静态资源功能,下载一些文件文件

    1、首先在配置文件添加项目外资源文件定位:

      

    spring:
      web:
        resources:
          static-locations:  file:uploads/,classpath:static/    #手动设置项目外路径uploads
    

    2、我们可以在项目文件家中创建uploads文件夹,以后项目jar外面也有uploads文件夹,该文件夹放置我们要下载的文件:

        ,,,,

    3、控制层定义 下载文件接口:

    @Controller
    public class DownClass {
    
        /**
         * 下载app
         * @param response
         * 解释一下,我们在yml里面配置了地址uploads,并且也在项目的根路径(直接在文件夹中,而不是IDEA工具里面)创建uploads/xxx.apk文件。
         */
        @RequestMapping("downApp")
        @ResponseBody
        public void Download(HttpServletResponse response,String version) {
            File directory = new File("");// 参数为空
            String courseFile = "";
            String fileName = "test-"+version+".apk";
            try {
                courseFile = directory.getCanonicalPath();
                System.out.println("path2: "+courseFile);
            } catch (IOException e) {
                e.printStackTrace();
            }
            String filepath = courseFile+"\uploads\" + fileName;
            File path = new File(filepath);
            if (!path.exists()) {
                System.out.println("找不到该文件:" + fileName);
                return;
            }else{
                try {
                    response.sendRedirect("/" + fileName);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    

    1、首先查询该文件是否存在,文件名 + 版本号。

    2、存在则利用response.sendRedirect("/" + fileName)  重定向到该文件。

    其实就是静态资源访问罢。

  • 相关阅读:
    单点登录原理与简单实现
    关系型数据库中的关键字、主关键字和候选关键字
    无向图的顶点连通度
    memcmp()直接比较两个数组的大小
    静态字典树
    动态字典树
    poj 1149
    poj 2112 floyd+Dinic最大流+二分最小值
    POJ 1698 (二分图的多重匹配)
    网络流算法
  • 原文地址:https://www.cnblogs.com/hcklqy/p/14836031.html
Copyright © 2011-2022 走看看