2009-11-24 30 views
3

請幫助澄清:的sitemesh VS JSP的配置(<包括-前奏>)

在web.xml我有以下

<jsp-config> 
    <jsp-property-group> 
     <url-pattern>*.jsp</url-pattern> 
     <el-ignored>false</el-ignored> 
     <page-encoding>utf-8</page-encoding> 
     <include-prelude>/jstlTaglibs.jspf</include-prelude> 
    </jsp-property-group> 
</jsp-config> 
在decorators.xml

另外我有

<decorator name="footer" page="footer.jsp"> 
    <pattern>*.action</pattern> 
</decorator> 

它通過sitemesh.xml使用。其中說footer.jsp

... 
<decorator:body /> 
<@include .. "footer.jsp"/> 

所以我收集的是,上述兩個代碼在某種意義上注入了一些jspf。請幫助強調這兩種方法的差異和好處。哪一個更多用於整個行業?

回答

2

JSP include-prelude用於在每個jsp頁面的開頭注入一個jsp代碼片段。這可以在純jsp環境中使用,以避免在每個頁面上編寫相同的代碼。被注入的代碼被執行爲jsp。

另一方面,Sitemesh不依賴於jsp環境,而是對html響應進行更靜態的格式化。這是sitemesh不知道HTML代碼來自哪裏,它可能是一個靜態的HTML頁面,PHP或JSP或其他。它只需要HTML代碼,並根據您的模板進行格式化併發送。

因此,兩種技術可以一起使用,因爲它們處理響應過程的不同方面。

相關問題