欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot訪問web中的靜態(tài)資源的方式小結(jié)

 更新時(shí)間:2024年10月10日 11:14:36   作者:Charge8  
這篇文章主要介紹了SpringBoot訪問web中的靜態(tài)資源的方式,本文給大家介紹了兩種方式,通過(guò)代碼示例和圖文講解的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下

總體來(lái)講 SpringBoot 訪問web中的靜態(tài)資源,有兩個(gè)方式:

1、classpath 類目錄 (src/mian/resource)

classpath 即 WEB-INF 下面的 classes 目錄 ,在 SpringBoot  項(xiàng)目中是 src/main/resource 目錄。

2、ServletContext 根目錄下( src/main/webapp )

一、SpringBoot 訪問web中的靜態(tài)資源

SpringBoot默認(rèn)指定了一些固定的目錄結(jié)構(gòu),靜態(tài)資源放到這些目錄中的某一個(gè),系統(tǒng)運(yùn)行后瀏覽器就可以訪問到。

1、SpringBoot 默認(rèn)指定的可以存放靜態(tài)資源的目錄有哪些?

  • classpath:/META-INF/resources/      ## 需創(chuàng)建/META-INF/resources/ 目錄
  • classpath:/resources/                        ## 需創(chuàng)建/resources/目錄
  • classpath:/static/                               ## 工具自動(dòng)生成的static目錄,也是用的最多的目錄
  • classpath:/public/                              ## 需創(chuàng)建/public/ 目錄
  • /                                     ## 指的是 src/main/webapp/ 需創(chuàng)建/webapp/ 目錄

查看源碼可以找到靜態(tài)資源攔截的自動(dòng)化的配置信息:在 WebMvcAutoConfiguration 類中的 addResourceHandlers方法。

2、在全局配置文件中自定義--修改這些默認(rèn)的目錄

注意: 修改后,除配置的目錄以外其他目錄就不可以再訪問靜態(tài)資源了(SpringBoot 2.1.4 試了好像可以)

方式一:配置文件修改

YAML 文件:

server:
  port: 80
spring:
  resources:
    static-locations:
      - classpath:resources
      - classpath:static
  mvc:
    static-path-pattern: /**

properties 文件 

server.port=80
spring.resources.static-locations=classpath:resources,classpath:static
spring.mvc.static-path-pattern=/**

第一行配置表示定義資源位置,第二行配置表示定義請(qǐng)求 URL 規(guī)則。

方式二:配置類修改

@Configuration
public class WebMVCConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**").addResourceLocations("classpath:/static/","classpath:/aa");
    }
}

訪問的時(shí)候就需要寫完整路徑 http://127.0.0.1:8080/static/abc23.jpg。

3、SpringBoot 默認(rèn)的首頁(yè)是放在任一個(gè)靜態(tài)資源目錄下的index.html   

4、SpringBoot 默認(rèn)的web頁(yè)面圖標(biāo)是放在任一靜態(tài)資源目錄下的favicon.ico

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h4>SpringBoot訪問web中的靜態(tài)資源</h4>
    <img src="abc23.jpg" width="300px" height="250px">
</body>
<script src="jquery-1.12.4.js"></script>
<script type="text/javascript">
    $(function () {
        alert("hello 首頁(yè)!");
    })
</script>
</html>

將靜態(tài)資源放在上面指定的目錄中,即可訪問 index.html

二、把靜態(tài)資源打成jar包引入系統(tǒng)后供訪問

常用的靜態(tài)資源jar包的maven依賴網(wǎng)站:http://www.webjars.org

把依賴配置到maven的pom.xml中,就可以在網(wǎng)站根目錄/webjars/jquery/1.12.4/jquery.js訪問到資源!

index.html 正常引用 js,也正常訪問到。

以上就是SpringBoot訪問web中的靜態(tài)資源的方式小結(jié)的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot訪問web靜態(tài)資源的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 簡(jiǎn)單談?wù)凧ava 中的線程的幾種狀態(tài)

    簡(jiǎn)單談?wù)凧ava 中的線程的幾種狀態(tài)

    這篇文章主要介紹了簡(jiǎn)單談?wù)凧ava 中的線程的幾種狀態(tài)的相關(guān)資料,需要的朋友可以參考下
    2020-02-02
  • Java中的Semaphore如何使用

    Java中的Semaphore如何使用

    Semaphore實(shí)際上是一種共享鎖,因?yàn)樗试S多個(gè)線程并發(fā)獲取共享的資源,在Semaphore對(duì)象創(chuàng)建時(shí)必須設(shè)置可用令牌的初始數(shù)量permits,用于控制并發(fā)時(shí)同時(shí)獲取資源權(quán)限的線程數(shù)量,這篇文章主要介紹了Java中的Semaphore如何使用,需要的朋友可以參考下
    2022-06-06
  • Spring Boot整合SSE實(shí)時(shí)通信的問題小結(jié)

    Spring Boot整合SSE實(shí)時(shí)通信的問題小結(jié)

    本文介紹了服務(wù)器發(fā)送事件(Server-Sent Events,SSE)技術(shù),其主要特點(diǎn)包括單向數(shù)據(jù)流、自動(dòng)重連、自定義事件類型等,SSE適用于實(shí)時(shí)更新場(chǎng)景,如新聞推送、評(píng)論系統(tǒng)等,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • 一起聊聊Java中的自定義異常

    一起聊聊Java中的自定義異常

    在學(xué)習(xí)Java的過(guò)程中,想必大家都一定學(xué)習(xí)過(guò)異常這個(gè)篇章,異常的基本特性和使用這里就不再多講了。本文就來(lái)和大家講講如何自定義異常
    2022-08-08
  • java多線程關(guān)鍵字final和static詳解

    java多線程關(guān)鍵字final和static詳解

    這篇文章主要介紹了java多線程關(guān)鍵字final和static詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • java的多線程高并發(fā)詳解

    java的多線程高并發(fā)詳解

    這篇文章主要介紹了java的多線程高并發(fā)詳解,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-04-04
  • Java從源碼看異步任務(wù)計(jì)算FutureTask

    Java從源碼看異步任務(wù)計(jì)算FutureTask

    這篇文章主要介紹了Java從源碼看異步任務(wù)計(jì)算FutureTask,F(xiàn)utureTask就能夠很好的幫助我們實(shí)現(xiàn)異步計(jì)算,并且可以實(shí)現(xiàn)同步獲取異步任務(wù)的計(jì)算結(jié)果,具體是怎樣實(shí)現(xiàn)的,下面我們就一起來(lái)學(xué)習(xí)下面文章的具體內(nèi)容吧
    2022-04-04
  • springBoot無(wú)法解析yml問題

    springBoot無(wú)法解析yml問題

    這篇文章主要介紹了springBoot無(wú)法解析yml問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Spring?Cloud?通過(guò)?Gateway?webflux實(shí)現(xiàn)網(wǎng)關(guān)異常處理

    Spring?Cloud?通過(guò)?Gateway?webflux實(shí)現(xiàn)網(wǎng)關(guān)異常處理

    在某一個(gè)服務(wù)中出現(xiàn)異常,通過(guò)@ControllerAdvice?+?@ExceptionHandler?統(tǒng)一異常處理,即使在微服務(wù)架構(gòu)中,也可以將上述統(tǒng)一異常處理放入到公共的微服務(wù)中,這樣哪一個(gè)微服務(wù)需要,直接引入模塊,本文重點(diǎn)介紹Spring?Cloud?通過(guò)?Gateway?webflux實(shí)現(xiàn)網(wǎng)關(guān)異常處理,一起看看吧
    2023-11-11
  • Idea2023創(chuàng)建springboot不能選擇java8的解決方法(最新推薦)

    Idea2023創(chuàng)建springboot不能選擇java8的解決方法(最新推薦)

    在idea2023版本創(chuàng)建springboot的過(guò)程中,選擇java版本時(shí)發(fā)現(xiàn)沒有java8版本,只有java17和java20,遇到這樣的問題如何解決呢,下面小編給大家分享Idea2023創(chuàng)建springboot不能選擇java8的解決方法,感興趣的朋友一起看看吧
    2024-01-01

最新評(píng)論