springboot文件虛擬路徑映射方式

springboot文件虛擬路徑映射

在application.properties配置文件中配置

spring.http.multipart.location= D:/
spring.mvc.static-path-pattern=/**
spring.resources.static-locations=  classpath:/,  file:${spring.http.multipart.location}

表示:讀取文件時從我們的磁盤D中讀取文件,例如:我們數據庫中存取的文件路徑為:

/2018/06/21//danPicture/cefb656f8cf542968107ca51e15c4ee5-1529540867019.png

那麼在頁面中展示的圖片的路徑實際上是我們本機電腦的路徑:

D:/2018/06/21//danPicture/cefb656f8cf542968107ca51e15c4ee5-1529540867019.png

就是說會自動幫我們做一個拼接的操作!!!!

springboot 配置文件虛擬路徑 供外部訪問

配置虛擬路徑 供外部訪問圖片 視頻等文件

第一步:配置application.yml

spring:
mvc:
  static-path-pattern: /**
resources:
  static-locations: classpath\:/META-INF/resources/,classpath\:/resources/,classpath\:/static/,classpath\:/public/,file\:F:/wechatProject/upload/

其中 F:/wechatProject/upload/ 為文件絕對路徑

第二步:添加 Configuration 文件

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
@Configuration
public class MyWebAppConfiguration extends WebMvcConfigurerAdapter {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        /**
         * @Description: 對文件的路徑進行配置, 創建一個虛擬路徑/Path/** ,即隻要在<img src="/Path/picName.jpg" />便可以直接引用圖片
         *這是圖片的物理路徑  "file:/+本地圖片的地址"
         * @Date: Create in 14:08 2017/12/20
         */
        registry.addResourceHandler("/Path/**").addResourceLocations("file:/F:/wechatProject/upload/");
        super.addResourceHandlers(registry);
    }
}

重啟

如果application.yml 沒有配置

server:
  servlet:
    context-path: /sell

瀏覽器訪問 http://localhost:8080/Path/11.html

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: