3

明確にするのを手伝ってください:

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を注入するということです。両方のアプローチの違いと利点を強調するのを手伝ってください。また、業界全体でどちらがより使用されていますか?

4

1 に答える 1

2

JSP include-prelude を使用して、各 jsp ページの先頭に jsp のスニペットを挿入します。これは、純粋な jsp 環境で使用して、各ページに同じコードを記述しないようにすることができます。挿入されたコードは jsp として実行されます。

一方、Sitemesh は jsp 環境に依存せず、html 応答のより静的な書式設定を行います。つまり、sitemesh は html コードがどこから来ているのかわからず、静的な html ページ、PHP、JSP、またはその他の可能性があります。HTML コードを受け取って、テンプレートに従ってフォーマットし、途中で送信するだけです。

したがって、両方の手法は、応答プロセスのさまざまな側面を処理するため、一緒に使用できます。

于 2009-11-24T15:09:45.877 に答える