所以這隻適用於某個條件下,你有一個全局文件在你正在寫的jsp相同的位置。
您的第一個選擇是在編譯時內聯文件global.jsp。這是固定的,如果您在global.jsp中更改了某些內容,它將不會被重新編譯該servlet。
您列出的第二個選項是採用現有資源請求,並將選擇器(如果有)更改爲「全局」。然後它通過吊索解析過程運行這個過程來確定要包含哪個文件。
由於同一目錄下的global.jsp將與您的請求相匹配,因此將其包含在內。
請參閱Sling URL Resolution瞭解更多詳情,特別是示例部分將顯示選擇器如何指示要使用的jsp。
注意:正如我所說的這樣工作,因爲在這種情況下解析器解析全局。如果您試圖添加的global.jsp位於不同的目錄結構中,則不起作用。
現在回答你的具體問題,哪個更好。這取決於。如果您正在使用吊索進行開發,那麼吊繩包含被認爲是更好的選擇,因爲當識別的資源發生變化時,吊索響應會更好。
我應該注意,sling include的具體用法並不是global.jsp的正常用法,因爲全局文件通常位於固定位置,並且您希望使用該特定版本。
吊索的更常見用法包括指定路徑和/或資源。
您的選項2的有趣用法是解析的實際文件與組件有關係,並且通過吊索解析確定,因此您可以擴展或覆蓋此組件,幷包含一個新的global.jsp利用。
非常感謝您期待已久的答案 – sachinjain024