您好,登錄后才能下訂單哦!
今天小編給大家分享一下SpringBoot中靜態(tài)資源訪問的方法的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
一、概述
springboot 默認(rèn)靜態(tài)資源訪問的路徑為:/static 或 /public 或 /resources 或 /META-INF/resources 這樣的地址都必須定義在src/main/resources目錄文件中,這樣可以達(dá)到在項(xiàng)目啟動(dòng)時(shí)候可以自動(dòng)加載為項(xiàng)目靜態(tài)地址目錄到classpath下 ,靜態(tài)訪問地址其實(shí)是使用 ResourceHttpRequestHandler 核心處理器加載到WebMvcConfigurerAdapter進(jìn)行對(duì)addResourceHandlers方法進(jìn)行覆蓋.將靜態(tài)訪問目錄進(jìn)行重新定義。我們也可以實(shí)現(xiàn)其中方法,手動(dòng)指定靜態(tài)訪問路徑通過繼承WebMvcConfigurerAdapter重寫內(nèi)部方法addResourceHandlers也可以達(dá)到我們想要的效果。
第一種方式 : 放在src/main/webapp目錄下
放在webapp目錄下的靜態(tài)資源是可以直接訪問的
user.html
2.png
在user.html中引用2.png
第二種方式:放在classpath下
ResourceProperties中的說明
org.springframework.boot.autoconfigure.web.ResourceProperties private static final String[] CLASSPATH_RESOURCE_LOCATIONS = { "classpath:/META-INF/resources/", "classpath:/resources/", "classpath:/static/", "classpath:/public/" };
靜態(tài)資源默認(rèn)放在classpath路徑下:Defaults to classpath:[/META-INF/resources/,/resources/, /static/, /public/] plus context:/ (the root of the servlet context).
person/index.html
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <link href="/css/main.css" rel="external nofollow" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="/js/main.js"></script> <script type="text/javascript"> sayHello(); </script> </head> <body> <h4>person page HTML</h4> </body> </html>
通過修改配置項(xiàng),設(shè)置靜態(tài)資源的位置
application.properties # 修改默認(rèn)的靜態(tài)資源存放目錄 spring.resources.static-locations=classpath:/web/
以上就是“SpringBoot中靜態(tài)資源訪問的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。