web-dev-qa-db-ja.com

.jspfファイル拡張子とは何ですか?コンパイル方法

JSPの.jspfファイルとは何ですか?私が知っているように、コンパイラはコンパイルするために.jspファイルを探しますが、その後.jspfファイルはどのようにコンパイルされますか?

88
giri

他の人が指摘したように、.jspfファイルはJSPフラグメントです。これらは、単独でコンパイルされるのではなく、別のJSPファイルに静的に含まれるように設計されています。

<%@include file="/WEB-INF/jspf/example.jspf" %>

この例は/WEB-INF/jspfディレクトリ。これは、Webアプリケーションの外部からアクセスできないことを意味します。それを取得できるURLを作成する方法はありません。それらを「通常の」JSPファイルと同じディレクトリに配置すると、そのようなURLを作成できます。たとえば、Tomcatはページをテキストドキュメントとして取得します。ただし、フロントエンドWebサーバーはこれらのURLをブロックできます。

大きなJSPページのリファクタリング の最初のステップとしてJSPFファイルが好きです。それらは静的に含まれているため、スクリプトセットや変数を用意せずにファイルの小さなチャンクを抽出することができ、ページのメンテナンス性が多少向上します(そして強調したいのは、 firstステップ;動的インクルードとtaglibは通常、より良い長期ソリューションです)。リファクタリングするとき、フラグメントを親ファイルの近くに保つことを信じています。これは、URLをブロックするWebサーバーがあると便利です。

123
kdgregory

JSPフラグメントは、サーバー側インクルードと比較できます。これらのフラグメントはそれ自体ではコンパイルされませんが、それが含まれるページと一緒にコンパイルされます。ユーザー設定に基づいて異なるページを表示する必要がある場合、jspfを選択します。

10
kodepet

What:.jspfファイルは、一般にincludeディレクティブを介して.jspファイルに含まれるファイルです。 「f」は「フラグメント」を表します。これらのファイルはそれ自体が完全なJSPではないためです。

コンパイル方法:.jspfはjspのフラグメントであるため、完全でコンパイル可能なソースではない可能性があるため、ほとんどの場合それらを参照する別の完全なソースから独立してコンパイルされます。

ソースIbm Infocentre

6
vmishra

IBMによれば .jspfはJSPフラグメント用です。フラグメントは完全でコンパイル可能なソースではない場合があるため、フラグメントを参照する別の完全なソースから独立してコンパイルすることはできません。

これらは、同じコンテキストでのJSPフラグメントの命名規則 Sunの開発者向けリソース で言及されています。

4
brabster

多くのWebフレームワークでは、小さな共有ビューとページからビューとページを組み立てることができます。 JSPを使用すると、これらの小さな断片はfragmentsと呼ばれます。名前が示すように、これらは必ずしも大きなコンテキストのない完全な表現ではありません。

他の言語およびフレームワークには、同等の概念を表す独自の用語があります。 Ruby on Railsの場合、たとえば、それらはpartialsと呼ばれます。

2
John Feminella