這篇文章主要用代碼解析Springboot靜態資源訪問,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
創新互聯科技有限公司專業互聯網基礎服務商,為您提供聯通服務器托管,高防服務器,成都IDC機房托管,成都主機托管等互聯網服務。springboot靜態資源加載默認是從/static(或/public或/resources或/META-INF/resources) 目錄下加載靜態資源。
加載的優選級別:/META-INF/resources》/resources》/public》/static
靜態資源的加載源碼分析(WebMvcAutoConfiguration類)
首先從WebMvcAutoConfiguration.class自動配置類部分代碼來看:
//添加靜態資源規則 public void addResourceHandlers(ResourceHandlerRegistry registry) { if (!this.resourceProperties.isAddMappings()) { logger.debug("Default resource handling disabled"); } else { Duration cachePeriod = this.resourceProperties.getCache().getPeriod(); CacheControl cacheControl = this.resourceProperties.getCache().getCachecontrol().toHttpCacheControl(); //webjars依賴映射規則 if (!registry.hasMappingForPattern("/webjars/**")) { this.customizeResourceHandlerRegistration(registry.addResourceHandler(new String[]{"/webjars/**"}).addResourceLocations(new String[]{"classpath:/META-INF/resources/webjars/"}).setCachePeriod(this.getSeconds(cachePeriod)).setCacheControl(cacheControl)); } //本地配置的映射規則 //this.resourceProperties.getStaticLocations() 從ResourceProperties中加載靜態路徑 String staticPathPattern = this.mvcProperties.getStaticPathPattern(); if (!registry.hasMappingForPattern(staticPathPattern)) { this.customizeResourceHandlerRegistration(registry.addResourceHandler(new String[]{staticPathPattern}).addResourceLocations(WebMvcAutoConfiguration.getResourceLocations this.resourceProperties.getStaticLocations())).setCachePeriod(this.getSeconds(cachePeriod)).setCacheControl(cacheControl)); } } }
另外有需要云服務器可以了解下創新互聯建站m.newbst.com,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
當前名稱:用代碼解析Springboot靜態資源訪問-創新互聯
路徑分享:http://m.newbst.com/article36/dpgopg.html
成都網站建設公司_創新互聯,為您提供手機網站建設、虛擬主機、網站建設、小程序開發、App開發、網站設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯