2009-04-20 6 views
1

Netbeansとサーブレットを使用してWebアプリケーションを作成しています。私は私のページにいくつかのCSSを使用しています。すべてのサーブレットが1つの場所に持つバナーとメニューをどのように置くことができるのか、すべてのサーブレットでこれを書き直す必要はありませんか?cssを使用してJavaサーブレット用のある種のマスターページ

ありがとうございました

答えて

4

フェイスレットの場合、これはケーキになります。サーブレットを使用しているので、ヘッダー、メニューなどのコードを含む基本サーブレットクラスを作成してみてください。その後

、たとえば、getBodyをそれぞれの子のオーバーライドを持っている:ここでは

は、親(擬似コード)である:

class Template extends HttpServlet { 
    doGet() 
    { 
     write getHeader(); 
     write getMenu(); 
     write getBody(); 
    } 
} 

class SamplePage extends Template { 
    getBody() 
    { 
     //put body HTML here 
    } 
} 

その後、それぞれの子は、テンプレートでテンプレート化されます。

+0

私はこのアイデアに取り組んでいます=)thnx 私は今でもJSPを使うことを検討しています:/ – Lilz

+0

JSPを使うのであれば、サーブレットよりも見やすいページを作るのがはるかに理想的です。 JSPページは、とにかくサーブレットになります。 –

+0

上記のサーブレットを使用すると、テンプレートクラスにhtmlコード(CSSを使用)が含まれますか?あれは正しいですか。次に、別のサーブレットでメソッドを呼び出すと、単にオーバーライド注釈を追加しますか?私はこれを正しく理解していますか? 質問があまりにも単純すぎると申し訳ありません:/ – Lilz

2

一般的な断片を含むJSPファイルを含めます。

<%@include page="..." /> 

また、共通のヘッダー/フッターの配置を設定し、各ファイルの先頭と最後に先頭と末尾のビットを含めることもできます。

0

私は、すべての私の個々のサーブレットクラスがオーバーライドする基本サーブレットクラスを定義します。次に、共通の要素をサーブレットから読み込んだファイルに置き、必要に応じて「ヘッダとフッタ付きの出力ページ」メソッドを呼び出します。タイトルに「X」や「EE」というフェイスレットが付いていないものはありません。

0

Apache TilesまたはSiteMeshのような標準のJSP @include機能を使用することをお勧めします。これらのライブラリははるかに強力で柔軟性があり、よりメンテナンス可能なJSPコードにつながります。

関連する問題