面接官によって重視する方向性は異なりますが、サーブレットについて質問すると、次のような内容が聞かれる可能性が高いので参考にしてください。
1. サーブレットのライフ サイクル
初期化: Web コンテナはサーブレットをロードし、init() メソッドを呼び出します。
リクエストの処理: service() メソッドを許可します。service() は、リクエストに対応する doXXX メソッド (doGet または doPost) を自動的に実行します。
破棄: サービスの終了後、Web コンテナはサーブレットのdistory() メソッドを使用してサーブレットを破棄します
2. JSP とサーブレットの違いは何ですか。
jsp は本質的にはサーブレットですが、この 2 つは異なる方法で作成されます。サーブレットは Java プログラム コードで構成され、プロセス制御とトランザクション処理に使用されますが、jsp は html タグと jsp タグで構成されます、動的な Web ページを簡単に作成できます。 JSP とサーブレットには主に 2 つの違いがあります。 コンパイル: JSP を変更すると、コンパイルなしですぐに効果を確認できますが、サーブレットにはコンパイルが必要です。変換: jsp は動的 Web 開発テクノロジであり、サーバー側で実行されるスクリプト言語です。一方、サーブレットは Web サーバー プログラミング テクノロジであるため、jsp は実行時にサーブレットに変換されます。
3. get と post の違いは何ですか?
get パラメータは URL を通じて渡され、post はリクエスト本文に配置されます。
get リクエスト パラメータには長さの制限があります。パラメータが URL で公開されるため、post は
get ほど安全ではありません。
Get リクエストは URL エンコードのみ可能です。 Post は複数のエンコーディングをサポートしています。
Get リクエスト パラメーターは閲覧履歴に完全に保持されますが、post は保持されません。
Get と post は本質的に tcp リンクであり、違いはありません。ただし、HTTP 規制とブラウザ/サーバーの制限により、アプリケーション プロセスにはいくつかの違いがあります。
get は 1 つの TCP データ パケットを生成し、post は 2 つの TCP データ パケットを生成します。
4. doGet メソッドと doPost メソッドの 2 つのパラメータは何ですか?
HttpServletRequest: リクエストに関連する情報をカプセル化します
HttpServletResponse:応答 関連情報
5. jsp の組み込みオブジェクトとは何ですか?
request: クライアントによって要求された情報が含まれます
response:サーバーからクライアントに返される情報が含まれます。 応答情報
session: リクエストに関連するセッション期間
pageContext: Web ページのプロパティの管理
application: サーバー起動の作成、サーバーのシャットダウン停止、複数のアプリケーションの情報の保存
out: クライアントにデータを送信
config: サーブレットのアーキテクチャ コンポーネント
page: Web ページを指しますそれ自体
例外: エラー ページ
6 にのみ使用できます。4 つのスコープ
ページ: ページ
リクエスト: request
session: セッション
application: サーバーの開始から停止まで
7. jsp## の動的インクルードと静的インクルードの違いは何ですか?
#動的インクルードは jsp:include action< ;jsp:include page="include.jsp"lush="true"/> で実装されており、インクルードされたファイルの変更を常にチェックします。動的ページであり、パラメータを取ることができます。#静的インクルードは include 疑似コードを使用して実装されており、インクルードされたファイルの変更はチェックされません。静的インターフェイスのインクルードに適しています
8. 転送とリダイレクトの違い
転送とリダイレクト:
最初のポイント: アドレス バーから見ると、転送はサーバーがリソースを要求することを意味し、サーバーはターゲットアドレスの URL に直接アクセスし、ターゲット URL の応答コンテンツを読み取り、ブラウザーに送信します。ブラウザーはサーバーから送信されたコンテンツがどこから来たのかを知りません。そのため、アドレスバーは元の URL のままです。 。リダイレクトとは、サーバーがロジックに基づいてステータス コードを送信し、ブラウザーにそのアドレスを再度要求するように指示し、アドレス バーに新しい URL が表示されることを意味します。
2 点目: データ共有に関しては、転送ページと転送先ページはリクエスト内のデータを共有しますが、リダイレクトではデータを共有できません。
3 番目のポイント: 実行場所の観点からは、ログイン時に forward が一般的に使用され、役割に応じて対応するモジュールに転送されます。
リダイレクトは通常、ユーザーがログアウトしてログインしてホームページに戻ったり、他のページにジャンプしたりするときに使用されます。
4 番目のポイント: 効率の観点からは、フォワードは高く、リダイレクトは低くなります。
以上がサーブレットに関する面接の質問に答える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。