• springboot 访问jar同级别下的文件访问问题


    最近使用springboot打包上传的时候遇到一个问题,就是访问与jar同级别的文件,之前使用最多的是war形式,所以很好设置静态资源路径。

    但是jar是看不到里面的文件夹的,所以把文件上传到与jar同级别的upload下,这样就需要在项目中设置upload也应该是静态资源。

    关键代码

    //静态资源配置
        @Override
        public void addResourceHandlers(ResourceHandlerRegistry registry) {
            //需要配置1:--- 需要告知系统,这是要被当成静态文件的!  设置内部静态资源
            //第一个方法设置访问路径前缀,第二个方法设置资源路径
            registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
            registry.addResourceHandler("/upload/**").addResourceLocations("classpath:/upload/");
            registry.addResourceHandler("/templates/**").addResourceLocations("classpath:/templates/");
         //关键在这
            //  获取与jar同级目录下的upload文件夹  设置与jar同级静态资源配置
            ApplicationHome h = new ApplicationHome(this.getClass());
            // 本地获取的路径 D:ideaspringboot2.x	arget  upload 跟 项目jar平级
            String path = h.getSource().getParent();
            String realPath = path + "/upload/";
            registry.addResourceHandler("/upload/**").addResourceLocations("file:"+realPath);
        }

    设置好之后,还遇到了一个问题,css,js加载不了,因为我使用的是nginx处理的静态资源,也要将这些进行代理,代码如下

    server {
      listen 80;
      server_name springboot.kingsuper.net;
      access_log /data/wwwlogs/springboot.kingsuper.net_nginx.log combined;
      index index.html index.htm index.jsp;
      root /data/wwwroot/springboot.kingsuper.net;
      
      #error_page 404 /404.html;
      #error_page 502 /502.html;
      
      location ~ .*.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
        proxy_pass http://127.0.0.1:8080;
        expires 30d;
        access_log off;
      }
    
      location ~ .*.(js|css)?$ {
        proxy_pass http://127.0.0.1:8080;
        expires 7d;
        access_log off;
      }
    
      location ~ /.ht {
        deny all;
      }
      
      location ~ {
        proxy_pass http://127.0.0.1:8080;
        include proxy.conf;
      }
    }

    设置好之后,就可以访问了,over

  • 相关阅读:
    传智播客itcastbbs(二)
    传智播客itcastbbs(三)
    传智播客itcastbbs(一)(图文)
    传智播客itcastbbs(四)
    传智播客itcastbbs(六)
    双语美文:我想! 我做! 我得到!
    java邮件开发详解
    JDK_Tomcat_MyEclipse配置
    醋泡大蒜有什么功效
    优盘量产
  • 原文地址:https://www.cnblogs.com/SeaWxx/p/10935209.html
Copyright © 2020-2023  润新知