ホームページ >Java >&#&チュートリアル >サーブレットを転送する方法
サーブレット転送手順: 最初にデータをリクエスト オブジェクトにバインドし、次にフォワーダーを取得します。最後に、転送先コンポーネントで、対応する値が存在しない場合はバインディング名に基づいてバインディング値を取得します。 null を返すだけです。
転送とは、Web コンポーネント (サーブレット/JSP) が未完了の処理をコンテナ経由で別の Web コンポーネントに渡し、さらに完了させることです。
一般に、サーブレットはデータを取得した後、それを JSP に転送し、JSP はデータに基づいて対応するページを生成します。
推奨コース: Java チュートリアル 。
サーブレットはどのように転送するのでしょうか?
step1. データをリクエスト オブジェクトにバインドします。
request.setAttribute(String name,Object obj);
例:
request.setAttribute("emplist",emplist);
step2. フォワーダーを取得します
RequestDispatcher rd = request.getRequestDispatcher(String uri);
uri: 転送先のコンポーネントです
例:
RequestDispatcher rd = request.getRequestDispatcher("empList3.jsp");
step3. 転送
rd.forward(request,response);
転送先コンポーネントでは、バインディング名に基づいてバインディング値を取得できます。対応する値が存在しない場合は、null を返します。
Object request.getAttribute(String name);
転送時に注意が必要な問題
Out.close および out.flush は、転送前に呼び出すことができません。
転送する前に、コンテナは応答オブジェクトのキャッシュ データをクリアします。
転送機能
転送後、ブラウザのアドレス バーのアドレスは変更されません。
転送先には、同じアプリケーション内のコンポーネントのアドレスのみを指定できます。
以上がサーブレットを転送する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。