zoukankan      html  css  js  c++  java
  • spring boot 的request.getServletContext().getRealPath路径获取问题

    默认情况下springboot中request.getServletContext().getRealPath 返回的是一个临时文件夹的地址

    通过查看源代码 位置在

    org.springframework.boot.context.embedded.AbstractEmbeddedServletContainerFactory#getCommonDocumentRoot
    private File getCommonDocumentRoot() {
            for (String commonDocRoot : COMMON_DOC_ROOTS) {
                File root = new File(commonDocRoot);
                if (root.exists() && root.isDirectory()) {
                    return root.getAbsoluteFile();
                }
            }
            return null;
        }
    private static final String[] COMMON_DOC_ROOTS = { "src/main/webapp", "public",
                "static" };

    可以看到springboot 会尝试读取COMMON_DOC_ROOTS 配置里面的路径,所以我们只需要在springboot 所在的jar 或者项目所在的根目录下新建一个public或者static的文件夹,那么通过 request.getServletContext().getRealPath 就会得到public或者static的路径

  • 相关阅读:
    Map和Set
    js基本语法入门
    js中变量的作用域,let,const详解
    循环结构
    方法
    只有分享才能一起进步
    培训随笔
    得食相呼,义也
    Wall.e
    《国学之大智慧》观感
  • 原文地址:https://www.cnblogs.com/netcorner/p/12001668.html
Copyright © 2011-2022 走看看