JavaWebインタビュー記事(6)

51、サーブレットのライフサイクルについての話?

        ロードとインスタンス化を含む生存の良い定義を持って、サーブレット、初期化が完了し、要求およびサービスを処理します。INITの寿命()、サービス()およびメソッド式インタフェースにjavax.servlet.Servletを破壊します。

        サーブレットがインスタンス化サーバされた後、コンテナは、要求が到着したときにその初期化プロセスは、そのサービス方法を実行自動的に呼び出すとき、サーバーが破壊の例を決定要求(のdoGet、doPostメソッド)、等、に対応する動作のdoXxx方法を送信するサービスメソッドを実行し、その破壊方法。

Webコンテナがサーブレットをロードし、ライフサイクルが開始されます。サーブレットのinit()メソッドを呼び出すことで、サーブレットを初期化します。別の呼び出し要求に応じて、サービスを()を呼び出すことによって実現は***()メソッドを実行します。サービスの終了は、サーブレットの破壊Webコンテナ()メソッドを呼び出します。

 

52、サーブレット前方におけるAPI()およびリダイレクト()の違いは?

    アドレスバーが表示されます1.
        前方サーバーのリソース要求は、サーバーのURLは、オーバー読むに応答内容のURLをターゲットアドレスに直接アクセスするには、その後、コンテンツブラウザに再配布さ。ブラウザがサーバーから送信された知りませんでしたコンテンツは、それのアドレスバーまたは元のアドレスそう。、から来
        リダイレクトサーバーを論理に基づいて、アドレスバーが示すので、新しいURLを再要求にアドレスをブラウザに指示ステータスコードを送信してください。そう等しいリダイレクトクライアントは、サーバーへの二回のリクエストを送ったが、また、2つの応答を受け取りました。
    データの共有2.
        前方:。データの内部に共有要求に前進前進ページとページ
        のリダイレクトが:.あなたが共有データすることはできません
        リダイレクトが現在のアプリケーションのために他のリソースにリダイレクトすることができない、あなたはまた、同じサイトにリダイレクトすることができますでも、他のリソース上のアプリケーション、または他のサイトにリダイレクトリソースへの絶対URLを使用しています。
        内部サーバの動作であるの.forward同じWebアプリケーション内のリソース間のforwardメソッドができる唯一の楽しみを要求。
        リダイレクト。サーバーの通知は、クライアントにクライアントを許可する要求を再起動
   しますが、そのリダイレクトが間接的な要求であると言うことができますので、しかし、あなたが言うことができない「リクエストは、前方またはリダイレクトの一部である」
    3の使用のための場所から
        前方:一般的な使用時にユーザがログイン適切なモジュールに転送役割に基づいている。
        リダイレクト:ユーザーが着陸をログオフすると、一般的に他の部位にメインページジャンプを返すために使用される、等
    4効率からです
        前方:。ハイ
        リダイレクト:低いです。

 

53.差request.getAttribute()およびrequest.getParameter()とは何ですか?

        図1に示すように、request.getParameter()が等着信データがコンテナによって達成される、取得し、同様のポストを得るために行われます。

            request.setAttribute()とのgetAttribute()だけ容器ウェブ転送内部のみ要求処理段階。

        2、のgetAttributeは、オブジェクトを返す、getParameterでは、文字列を返します。

        3後、のgetAttribute()は常に一緒に使用されるのsetAttribute()は、最初の()のsetAttributeが設けられ、転送データがObject型であるのgetAttribute()によって値を得ることができます。そして、同じリクエスト・オブジェクト内でのみ有効で使用する必要があります。パラメータ、およびのgetParameter()は、ポスト以上が提出しますフォームを受けています

 

54、静的と動的との間のJSP差であっ含みます

        1、サーブレット、JSPへの移行期間を含むファイルで発生するJSPコンパイラディレクティブの、<%@ファイル=「xxx.jsp」%を含む>、および<JSP:ページ=「xxx.jsp」を含む>がファイルが含まれているJSPの動作指令は、コンパイル時に発生する、すなわちクラスファイルをコンパイルしたJavaファイルのための期間 

        静的を使用して2は、いくつかのクラスファイルに結果を含めるだけで、クラスファイルを生成し、使用するダイナミックが含ま 

        図3は、使用して静的には、リクエストオブジェクトは、ページと静的として含めるだけで内容が行くを含むページへのページに含まれるようにコピーし、同じオブジェクトを含むページが含まれています。動的に含ま含まページと含まれるページが同じではありませんページ、リクエスト対象のページが含まれているパラメータを含むページに渡され得るだけでなく、パラメータの比較的広い範囲をとることができる、同じパラメータも下方に通過含むページを取得することができます 

 

55、MVCのさまざまな部分を達成するために、これらの技術を持っている?どのように達成するために?

        MVCは、Model-View-Controller速記です。モデルは(JavaBeanの、EJBコンポーネントの実装によって)アプリケーションのビジネス・ロジックを表し、ビューアプリケーションは、(JSPページによって生成された)表面であり、コントローラは、プロセス制御アプリケーション(典型的にはサーブレット)、このような設計モデルを提供しますアプリケーションロジック、処理及び表示ロジックは、異なるコンポーネントに実装しました。これらのコンポーネントは、相互に作用して再利用することができます。

 

 内蔵されたオブジェクトのjsp 56は、?どのような役割をしていますか?

        以下の9つのJSPの合計は、組み込みオブジェクト:

        1、クライアントの要求を要求し、要求がGET / POSTリクエストからのパラメータが含まれます

        2、応答ページは、クライアントのに応答を返します

        3、pageContextの財産管理ページはこちら

        図4に示すように、セッションのセッションの要求に関連します

        図5に示すように、コンテンツのアプリケーション・サーブレットが実行されています

        図6に示すように、アウト出力応答を送信します

        7、設定サーブレット骨格部材

        8、ページJSPページ自体

        9、エラーページの例外、キャッチされない例外

 

57、HTTP、区別getとpostメソッド

        1、要求されたデータのためのサーバが取得するために送信され、1種類のポストは、サーバーのデータへの要求を提出しなさい

        2は、むしろ同じデータベースクエリ機能のような情報が、変更よりも、情報へのアクセスを取得し、データが変更されません

        図3に示すように、渡されたURLのパラメータを使用して要求を取得し、要求されたデータがますか?URL URLに併合及び分割されたデータを送信される、16進数で、XX%XXそのシンボル間&パラメータに接続されています。データはスペースは+に変換されている場合、それは、送信されたとして、英文字/数字であればASCII表現は、中国/他の文字場合、文字列は直接BASE64を使用して暗号化。
        4. GETは、URLでデータを提出することであるため、データ転送のサイズが限定されている取得、そしてちょうどURLの長さを取得することにより提出することができるデータの量との間に直接的な関係があり、ブラウザでのURLの長さの異なる制限が異なります。

        5、要求されたデータがキャッシュされているユーザー名とパスワードアップブラウザは、他の人が履歴レコードをブラウズ見つけることができ、データは安全性の低い、URLにプレーンテキストで表示されますGET。

サーバー側では、場合、Request.QueryStringのGet提出にしてデータを取得するために
HTMLヘッダーを提出してポストのウェブサーバーに送信されたHTTPリクエストメッセージの実際の内容として、データが配置され、制限なし・ポストは、データを提出しました。ポストはセキュリティ上取得、または取得の使用は、パラメータがアドレスに表示されますので、データは、getで、中国のデータに敏感ではない場合、データや機密データが漢字ではなく、使用後。
        図6に示すように、POST要求を修正することができる増加するサーバ上のリソースを示し、サーバー側で、ポスト方法によって送信されたデータのみのRequest.Formを得るために使用することができます。

(良い答えがある場合にのみ、参考のために、探求する歓迎)

 

クッキーとは何58?セッションクッキーとの違いは何ですか?

    クッキーは、ブラウザオブジェクトへのユーザーの情報が保存されます、テクニカルセッションです。

    違い:

        (1)クッキーのデータは、お客様のブラウザに保存され、サーバー上のセッションデータ
        (2)クッキーは、人々がローカルに保存されている分析することができますし、主な考慮事項は、セッションを保護するために使用すべきかどうCOOKIE COOKIEは、カンニングではなく、非常に安全である
        3( )セッションが一定時間サーバー上に保存されます。増加にアクセスする場合は、プライマリサーバは、アカウントの緩和性能を考慮している場合より、サーバーのパフォーマンスを取るだろう、あなたはCOOKIE使用する必要があり
        、クライアントに単一のクッキーを制限するために、(4)、クライアントCOOKIEない3Kに格納されているサイト3Kです。

    結論:

        ログイン情報やその他の重要な情報が保存されているSESSIONであり、追加情報、必要であれば、彼らはCOOKIEに配置することができます。

 

59、JSPとサーブレット、一般的な、その適用範囲の違いは?

        JSPサーブレット技術は、簡単な方法で、本質的にサーブレットでの拡張です。JSPコンパイラの後、「クラスサーブレット」です。

        アプリケーション・ロジックは、Javaサーブレットファイルであり、かつ完全にプレゼンテーション層からHTMLから分離:サーブレットとJSPの主な違いは、ということです。状況JSPは、JavaとHTMLが.jspファイルの拡張子にまとめることができます。

        JSPはサーブレット、主制御ロジックのためのビュー、に焦点を当てています。支柱、JSP位置ビューMVCデザインパターン層、サーブレット位置制御層のフレームワークです。

 

60、Tomcatサーブレットコンテナは、クラスのインスタンスを作成する方法ですか?どのような原理が使用されていますか?
        コンテナの起動時には、ディレクトリ、およびその後の解析XMLファイルをwebappsに、およびサーブレットの登録情報を読んで、すべてのWebアプリケーションのweb.xmlファイルを読み込みます。次いで、各登録されたアプリケーションは、サーブレットクラスをロードし、そして反射の例として。(時々 、要求の最初の例で)
        一緒に登録サーブレットの<load-on-startup>と 1 </のload-on-startup> 正の場合、実施例の冒頭で、そうでない場合書き込みまたは負の、最初の要求はインスタンス化され

おすすめ

転載: www.cnblogs.com/mxb0611/p/11910848.html