簡體   English   中英

Spring MVC:資源標簽理解

[英]Spring mvc:resources tag understanding

在Spring Petclinic中,以下標記用於靜態內容。

"<mvc:resources mapping="/resources/**" location="/resources/"/> "

但是我在理解這一點時遇到了問題,因為映射和位置是相同的。 那么這個標簽將解決什么目的呢?

“ spring:url value =” / resources / css / petclinic.css“ var =” petclinicCss“”

那么執行mvc:resources標記后轉換后的URL是什么。

<mvc:resources mapping="/resources/**" location="/resources/"/>

這個url模式/resources/**任何請求,Spring都會尋找/resources/

  1. mapping是網址格式
  2. 項目類路徑中資源所在的location

配置資源服務


用法示例,

  1. 通過使用JSTL <c:url>

     <script type="text/javascript" src="<c:url value="/resources/js/jquery.js" />"></script> 
  2. 通過使用<spring:url>

     <spring:url value="/resources/images/favicon.ico" var="favicon" /> 

如前所述,“位置”是文件所在的位置,“模式”是用於調用文件的URL。

您將以這個示例理解。 假設我們具有以下WebContent文件夾結構:

-WebContent
    -META-INF
    -WEB-INF
        -assets
            -css
                *myview.css
            -js
        -view
            *myview.jsp //or html or any kind of view format)

現在,在spring調度器中,我使用如下標記:

<mvc:resources mapping="/resources/**" location="/WEB-INF/assets/" />

然后,在我的“ myview.jsp”中調用“ myview.css”,我必須這樣寫:

<link href="<c:url value="/resources/css/myview.css" />" rel="stylesheet" type="text/css">

實際上,Spring調度程序針對所有以“ / reources /”開頭的網址,用[mapping =“ / resources / **]表示(以“ resources”開頭,而**表示無論結尾如何),它替換了“ / resources /”(由“ / WEB-INF / assets /”(由location =“ / WEB-INF / assets /”配置),然后將其余網址附加到“ / WEB-INF / assets /”以查找位置項目結構中的資源。

我希望現在很清楚

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM