2013-08-28 6 views
5

Ich denke, die Frage ist die gleiche für huge manipulations with URL (dh Warum?). Wo Leute nur die URL von Grund auf rekonstruieren.Wann ist das Spring: URL-Tag zu verwenden?

behindert es nicht die Sichtbarkeit der App für UI-Entwickler, wenn alles, was sie sehen:

<link href="${some_url_possibly_not_named_logically_i_e_karamba1243}/less/bootstrap.less"/> 

ich sind einfach nicht verwendet Gebrauch Fällen, in denen diese Tags verstehen und warum sollte ich? Wie kann dieses Beispiel Snippet mit der Verwendung von Feder verbessert werden: URL-Tag? Würde es nur dazu verwendet werden, sich wiederholende Teile der URL zu entfernen?

<div id="header"> 
      <ul> 
       <li><a href="/futfarm/home/">Home</a></li> 
       <li><a href="/futfarm/person/myProfile/">My Profile</a></li> 


       <sec:authorize access="hasRole('ROLE_Coach')"> 

        <li><a href="/futfarm/coach/training/viewbank">Training</a></li> 
       </sec:authorize> 

       <sec:authorize access="hasRole('ROLE_Player')"> 

        <li><a href="/futfarm/player/training/viewbank">Training</a></li> 
       </sec:authorize> 


       <sec:authorize access="hasRole('ROLE_Manager')"> 

        <li><a href="/futfarm/manager/administration">Administration</a></li> 
       </sec:authorize> 
      </ul> 
     </div> 

Oder die große Sorge ist, dass, wenn gleiche URL wird in einem anderen .jsp verwendet werden, können wir nur eine Variable packen, aber dann wieder diesen Tag ist spezifisch Umfang jsp so andere Seiten nicht verwenden können. I Was ist los mit dem traditionellen Ansatz? Gibt es Beispiele, wo ich nichts anderes als Frühling verwenden kann: url.

Es ist genau einer der Fälle, wo jeder es nutzt, erklärt niemand (auch Google - Bereitstellung SuperURL Wiederaufbau Fälle) und alle glücklich, außer mir, das Gefühl verwirrt und stumm :-)

Antwort

3

es verwenden, wenn Sie müssen dynamische Komponenten in generierten URLs enthalten (z. B. /app/resources/{name}) und sicherstellen, dass diese URL-Komponenten (z. B. {name} wie oben) ordnungsgemäß maskiert sind. Look here für weitere Informationen.

Beachten Sie auch, dass Sie globale Attribute haben können, die Sie mit z. das <spring:url />-Tag über mehrere JSPs. Schauen Sie sich setExposedContextBeanNames(String[])here.