なぜ使用のフレームワーク?

    今、このプロジェクトは、フレームワークを使用しますやる、それが一般的なフレームワークはSSH(Strutsの+ SpringMVC +春+休止状態)、SSM(Strutsの/ springMVC +春+休止状態)で、今であり、私は最近、easyUI +のためのフレームワークを使用して、プロジェクトのitooをしましたSpringMVC + EJB +休止状態。階層化は、より良い切り離すためにプロジェクトをやっているので、多くのフレームワークは、それを必要としない、なぜ、あなたは完全に階層的な枠組みは、解決することができないのですか?

 

    そして、多くの企業が今Struts2のspringMVCから移行するために層のウェブ技術のフレームワークプロジェクトをコントロール、なぜ我々はJavaのWeb開発を行っている、代わりにこのような技術のサーブレットを使用することを追加し、JSP、このようなフレームワークのStruts2のかspringMVCを選ぶのでしょうか?特に今、我々は、JSPを放棄し、そのようなVelocityテンプレート言語発達のウェブフロントページを使用していることを、この選択は、私たちに私が見つけたの利益の種類、アイデアの延長の問題、JavaのWeb開発を与えますJavaエンタープライズ・レベルの開発の多くは、Springフレームワークを選択することで、なぜ新しい質問は、アプリケーション開発のためのSpringフレームワークは、私たちに何をもたらしましたか?このような深さは本当に理解したくない、私は完全に最終的に私は、私は、一般的に使用される技術に精通してる実際には、私を聞かせて奇妙多くあると思いますことを発見し、答えを説得人々の束を見つけることは難しいように見えることができますしたいと思いますこれらの奇妙な不可解な場所は私が高い彼らのキーのレベルが、Struts2のを使用することができれば、技術的な蓄積のように多くの年後に、この春は非常に大きくかつ複雑である何であり、彼らは非常に広いです理解私は長い時間のためにそれらを使用してきたが、まだ多くの技術的な不慣れと不明瞭があります。

    給付金の使用に非常に一般的なフレームワークがあります:まず、それが開発プロセスをスピードアップすることができ、コードの再利用開発者がコード内でこの利益の面倒な作業を実行するために事前に構築されたモジュールを提供する枠組みの中で同様のプロジェクトに多くの時間と労力を節約します。非常に便利です。が、約深い思考を下るフレームワーク?

  実際には、従来のように、従来技術に基づく技術の枠組みの確立を特徴とし、ビジネス機能を提供しているフレームワークの一種で、独自の技術よりも、この新技術のフレームワークがあり、多くの優れたソフトウェアフレームワークがあります例えば、同時に、より堅牢で、より強力な、より使いやすい:jQueryの、そしてこの紙はStruts2のとspringMVCについての話であり、これらのフレームワークの下に取得する非常に複雑ですが、その利点は唯一のものである:コアビジネスについてのみのケアにユーザーを可能にします既存の技術の事業開発の独立と技術的な問題の多様性を保護するのに役立つ開発フレームワーク。同様のjQuery、Struts2のかspringMVC良い理由なぜ我々はStruts2のを理解したいので、多くのプログラマは、既存の技術の真の顔を知らないそれを使用していることを、彼らは良いを行い、この時点では、あるフレームワークのこのタイプ、より良い、より多くの熟練した私たちは、サーブレットの特性を慎重に検討中で、Struts2のソースサーブレット技術に私たちはより良いStruts2のフレームワークに学ぶことができる唯一の方法はStruts2の技術を飛び出すする必要があり、詳細な使用、。

 

  サーブレットアクションは、サービスブラウザ受信側への要求(リクエスト)、レスポンス(応答)サーバと、ブラウザとサーバがHTTPプロトコルを介して通信を行うユーザのブラウザに返さ処理され、プロセスであります指定されたサーバーへのHTTPパケットのHTTPプロトコル・パケット仕様組立要求パケットによってユーザの選択情報に応じて、ブラウザ、サーバは、例えば、ネットワーク伝送を介して特定のWebコンテナを介してこのメ​​ッセージ情報を受信する:Tomcatを、桟橋後に、このようなJBossのWebコンテナ、コンテナがウェブ解析されたパケット、ユーザの要求した場合、最終的な解析されたメッセージ情報は、要求オブジェクトと一緒に格納されているHTTPれ、サーバはこの対応する処理要求仕上げを使用し、サービスプログラムの最後には、対象のWebコンテナ、Webコンテナへの応答がブラウザに応答パケットのHTTPプロトコル、およびメッセージの裏にオブジェクトを入れた後、ブラウザが最終的にこの問題を解決する、応答に情報パッケージの対象になります応答パケット、ユーザーへの最終結果。

 

  ウェブサーブレットコンテナがインタフェースを作成し、インタフェースは、サーブレット開発者が独自のビジネス・ロジックの実装を配置され、プログラマは、フィル・インを行うもので、サーブレット、およびフィルインコンテキストまたはコンテキストは、リクエストとレスポンスオブジェクトによって要求されますが、JavaEEの中規範サーブレット・インターフェースは非常に簡単であり、3つの方法がINIT、サービス及びDestoryは、このインタフェースはあまりにも一般的であり、それはまた、HTTPリクエスト、サーブレット・インターフェース最大の種類に応じてdoGetメソッドを提供するのHttpServletクラス、doPostメソッドの方法で仕様を提供それはhttpプロトコルの定義の特性に応じて特徴付け、したがって、httpプロトコル機能のユーザーは、多かれ少なかれ、ときいくつかの特別なリクエストに会って、特に複雑な問題を混乱発生します、と特に精通していない場合は、サーブレット開発の時間を行うされています。ファイルのアップロードなど、サーブレットの開発者が問題があると私たちはしばしば見落とさあり、データ変換要求のタイプで、サーブレットの開発を使用して、この時間は非常に便利ではありません、ブラウザに特殊なファイル形式を返され、HTTP契約伝送テキストですWebコンテナの形は、後に解決されます テキストタイプ、あなたは通貨、数字、我々は情報ページは非常に送信した場合、実際の状況に応じて変換する必要があるタイプの日付に遭遇した場合、我々は型変換の多くをしなければならない、この仕事は技術的な内容ではありません、物理的な作業であります簡単にプログラムエラーにつながることができます。一方、Javaの企業の発展は、対応するJavaBeanにも型変換の良いデータパッケージ、JavaBeanの周りに行われているこの問題は、古いstruts1あるので、プロジェクト開発のためのものとターンのこの種のは、間違いなく良いことではありません解決策を見つけるために、そのようなことをやって責任DTOオブジェクト(データ転送オブジェクト)の定義ですが、Struts2のに、アクションの全体の交換は、サーブレットJavaBeanはそれ自体です。

 

  エンタープライズJava開発が行わJavaBeanの技術的特徴の使用であり、それは動作特性Struts2の別のクラスの一つの典型的なサーブレットのJavaBean、データフレーム送信のStruts2の最初のページは、パッケージと、パッケージに変換要求情報の種類の後に実行されています私たちは、私は伝統的なサーブレットの前で話をした問題と変換パッケージの種類、心配する時間の必要性を排除したWebアプリケーションを開発、このJavaBeanのプロパティは、httpプロトコルに従って定義され、それはあなたの要求メソッド(POSTまたはGETによるとなりますユーザの要求を処理するための方法が)が、プログラム開発者のために、特定のURLへの要求は、実際には、関係するサーバー用の外部サーバが提供する機能である、またはサーバ側のアクションが外部にあります私たちは、サーブレット開発プロセスを使用している場合、我々は複雑になり、アプリケーション開発者を可能にし、開発の難しさを向上させるため、HTTPの内部を遮蔽するサーブレットJavaBeanのサーブレット要求を交換Struts2の具体的な事業活動へのhttp動きを配置する必要があります特定のビジネス上の問題と行動を転換、javabeaの方法 nはそれぞれ、すべての方法では、必然的に開発し、問題の難易度を削減する各要求のためのURLを指定できます。

 

    もう一つの役割は、ページが正しい応答を取得することができ、サーブレットのレスポンスオブジェクトを構築することで、実際には、近代的なブラウザは、マルチメディアツール、テキスト、画像、画面で、すべてがブラウザに表示できるように、さまざまなリソースは、http応答につながります私たちはの形で処理されるサーブレットの開発者を使用する場合、プログラマは場所にリソースを理解していない場合は、パケットの違いは、ハードコード化されたJavaプログラムでさまざまなリソースに応じて、このようなプログラムは、特定のために再利用することは困難であり、治療法です原因の問題は、Javaプログラム・ロジックから、このようなコンフィギュレーション・ファイルの形でStruts2のは、春とAOPの道のアプローチに似て一元管理構成の使用は、これより統一的なアプローチの結果を聞かせてストリッピング、発生し、より多くの経営に資するだけでなく、プログラムの堅牢性を強化し、開発の難しさを減らします。

 

  制御層である層CがあるとしたサーブレットMVC開発モデル、ロシアの双頭のワシなどの制御層(ヘッド東が見て頭の西を見るために)M-層モデル層、Vに頭を初めて目として、それはクロスだ、ビュー層の層の外観は、モデル層は、制御層はまた、サーバー側の言語を開発するために属していない天然バリアの通信MとC層ので、Javaで書かれているが、ビュー層と層のVは同じではありません口頭でのコミュニケーション、ブラウザに、それだけで、HTMLやJavaScript、CSSは、Javaのブラウザは言語のことを理解することはできません知っているが、受け入れることができるかを理解するために、サーバーブラウザを聞かせて、我々はサービス側に応答する必要がページ内の情報、及びそのためのhtmlページに変換するJava技術情報を必要とし、これは、JavaEEの中規範は、実際には、JSP技術を提供し、サーバー側のJSP技術ではなく、クライアント側の技術ですが、それはそうですhtmlの技術のように、最初のJavaEE仕様はカスタムラベル技術を提供した後、この害の誰もが、知っているページ、使用に直接書き込まれたJSP、Javaコードで開発 パースのHTMLタグJavaコードにいくつかの方法と同様の種類は、Struts2のフレームワークは、音Suansha思わないカスタムラベル技術の完全なセットを提供しますが、カスタムタグは、カスタムは、その誰もがあると呼ばれていたため、その役割は、尋常ではありません自身がない仕様避けられない混乱はなく、完璧なカスタムラベルは、開発言語の新しいセットを定義する体系的なプロジェクト、私たち自身の人々へのカスタムタグと同等の完全なセットである場合には、定義されたの手順を行うことができますこの必須聞くには、ワークロードとカスタムラベルを開発することの難しさの完全なセットの開発を理解するだろうと想像するのは難しいですが、カスタムラベルと制御層は密接に関連している、難しさは寸法が大きくなりますので、Struts2のは、提供事業開発のためのカスタムラベルは、質的な飛躍をもたらします。

 

  二つの重要な技術があるサーブレット:少ないシーンのリスナーとフィルターはWeb開発で使用されるリスナーがいくつかの非常に特別な事情があるあなたは、その使用を無視することができるWeb開発のほとんどを使用しますこのリスナーは、グローバルWebアプリケーションを使用するので、私たちは、ほとんどがのServletContextグローバルオブジェクトは、Webアプリケーション全体で、おそらくのServletContextリスナを作成し、破壊するリスナーであり、それは束ねたWebアプリケーションのライフサイクルで使用します例えば、ばねコンテナの初期化動作の情報を初期化して破壊します。フィルタでユニークな機能Struts2のインターセプタは、インターセプタを使用しているので、彼らの役割は、同じ要求を傍受することがありインターセプターStruts2のどこより興味深い、よりスムーズに自然なフィルタに比べてStruts2のインターセプターは、インターセプトをより多くの要求を制御する機能を平面をインターセプタは、反射技術を使用しているため、フィルタよりも高度な技術を使用し、したがって、より大きなインターセプタ実際には、それはタスクをよりカラフルになります完了することができます。

 

  gxptシステムのStruts2のと私の最初の接触では、私が設計の目的は、単に2つのHTTPプロトコルの息子は、Web開発のアイデアの混乱の原因となりますよう、操作要求と応答オブジェクトで制御層におけるストラットを保護したいと言われました私は、多くの場合、無意識のうちに実際に実際の開発では、これら2つのオブジェクトを使用します。Struts2の効率は、Javaが非常に低いにも反映され、コンフィギュレーションを行うには、アノテーションを特に使用することをあまりにも多くの反射を使用して、直接使用するサーブレットは、Webアプリケーションの効率を高めることができるようになります。私は、サーブレット柔軟な使用の春技術ではなかったので、実際には、この秋には、行うことは困難です。

 

 

  宣言型トランザクションがある:Javaのスプリング技術は、(例えば、技術を開発するために最も重要な企業であってもよいが、本当に、多くの人が実際に使用段階を理解するために、春に滞在されて面倒なことである春の役割と重要性を理解するために言うことができます簡単な)の使用などに、春には今日の技術環境は壮観として記述することができ、春には、IOCが組み込まれているような大きなボックススプリングながら、それは、そのコンテンツソースのJava言語な限り完全な限りだ、オールインクルーシブされていますAOP技術と上記のように、このボックスの春にはたくさんのことを保持することができますなぜ我々は理解することができ、これら二つの技術の唯一の深い理解。

 

  IOCである第一、IOCの技術最初の説明は制御の反転と呼ばれ、それはまた、依存性注入の説明が理解し、文字通り難しいこれら二つの名前ということでありますが、あなたはそれはあなたがどのように彼らの記述を見つける仕組みを理解するとき正確な。技術のIOCの本質は、他の言葉でオブジェクト技術を構築することである、Javaクラスのクラスのオブジェクトインスタンスへの技術は新しいキーワードでインスタンス化され、毎回、新しいクラスが行う、オブジェクトの新しいインスタンスを持つことになります廃棄物に応じて、そのような廃棄物は、時には非常に危険、開発者はしばしば、我々はクラスが必要時にのみしかオブジェクトのインスタンスが1つにあなたがシングルトンを使用する必要があり、この時間を作ることができるので、また、デザインモードでどこにも通じことができますオブジェクトファクトリモード、使用済みの春の人々は豆春の定義と上記の対応の内容では、上記のテキストは知っている参照を生成し、スコープは、単一のシングルトンオブジェクトの属性を生成し、プロトタイプは、新しいオブジェクトを生成するために、豆もできますオブジェクトを生成するために、工場出荷時の方法、ツールは、春の豆の言うことができるオブジェクトを作成することです。人生の物理的な表示のオブジェクト指向と同等でオブジェクト指向プログラミングは、例えば、我々は、ターゲットの役割を持って狩りに操作を完了することで、このオブジェクトを狩るには、2つの内部補助オブジェクト含まれています。人間の銃を、そして銃は唯一のオブジェクト狩りを与えますその後、狩猟の操作を完了するために、それは銃を持って、ここで、見た目ほど銃人物オブジェクトは容易ではありません構築するためにターゲットを狩り、例えば、我々は銃の金属を作成する必要があり、工作機械は、必要性の弾丸が必要ですが、弾丸や工作機械しかし、相互に相互に入れ子になっても、二つの新しいオブジェクトことを、私たちはもっと構築したい場合に、誰もが、我々は、単純な銃のターゲットをあまりにも複雑であるオブジェクトのJavaコードで銃を構築していない場合を想像しますが複雑な空母、このオブジェクトの建設コストの高さはどのようなオブジェクトに相互依存のネストされた関係を削除するには、想像するのは難しいのですか?春には、この方法は、我々はときにからできインスタンスを使用する必要がある場合に、コンテナオブジェクトの構築、Javaコードを完了し、xmlファイル内の各オブジェクトの依存関係を定義する容器を提供するばねである、方法を提供しますあなたがプログラムにしたいときには、制御の反転、制御の反転、元々の容器を引き継ぐために引き渡されたJavaプログラムの関数オブジェクトを構築するために属し手段と呼ばれているように、コンテナの買収は、建物は、春のコンテナオブジェクトの操作上で撮影された、依存性の注入はありますオブジェクトを使用する場合、容器は、依存性注入と呼ばれるプログラムにそれを注入します。Jで 私たちが提供するクラスを取るしたいと思いAVA開発は、二つの方法、1は、新しいクラスを構築することで、クラスを継承する新しいクラスがあり、クラスを定義する別の方法は、新しいクラスに吸い込まその後、二つのクラスの関係との間の関係の確立に、この協会の春のIoCコンテナは、(ああ継承を覚えていない)の関係を達成することである、そのクラスはどのように新しいクラスに与えられるのですか?一般的に2つだけの一コンストラクタで、一方がばね容器は2つの標準的な方法を注入するために使用される、のsetXXX方法によるものです。

 

  言っ相続、または、彼らは実際にターゲットオブジェクトの能力を強化するためのツールの開発に関連している道の上に、デザインモードでプロキシモードがあるかどうか、プロキシモードを継承するとアソシエーションモードを併用し、継承モードとプロキシモードであり、複雑な関連のパターンが、この複雑な問題は、そのオブジェクトの注射ではなく、そのヘッドIIおよび新規、乳母または特定の操作オブジェクトの秘書を見つけるために、外国の代表の数二つのヘッド等の役割オブジェクトの特定のインスタンスの、一つのヘッド、乾燥イベントに対する一つのヘッドは、あるいくつかのトランザクションようので、オブジェクトの特定の例としては、オブジェクトの入口と出口のインスタンスは、数両ヘッドを介してであるような泡のような繰り返し作業お茶は、車のために配置され、この種の仕事を行うには手間がかかることは大甲つのヘッドが、AOPの考えられる助けのための第二総局、トランザクショナルで開発AOP決済手続き、およびコアビジネス上の問題とは無関係な、しかし、これらの問題ですビジネスシーンの実現のためには、保存もAOPでの実際の開発に必要であり、コードへの一つの方法。

 

  それは、う春はコア技術の役割は、基本的に通信メカニズムであり、両者の間の通信コストを削減しながら、双方が情報の流れを通信するためのバネが常に最善を尽くし、現実機関に良いコミュニケータは、確かに、同社のリーダーシップであります今日は、何が内側に設置することができ、大きなボックススプリングがあるので、リーダーシップとコミュニケーションは、様々な人々が彼に従うことをそうすることを、多様性に寛容で行います様々な資源、良好なコミュニケーションとリーダーシップの熱意を動員することができます。

 

  銀行などの春は、それが直接物質的な富を作成することはできませんが、すべてのリソースがそれを循環させることによって行われるべきで、それがプログラムに経済発展の方向、世界のバックを制御することができ、春の役割は、プログラム間のデカップリングとして請求されていますバネは、異なるモジュール間の結合を低減することができ、その理由は、オブジェクトを渡すことによって達成される異なるモジュール間の情報の通信におけるプログラム開発であり、目的は、良好な対象を構築するために、滑らかな音を提供し、オブジェクトを管理することですあなたがオブジェクトを管理することができる方法の構築は、システムアーキテクチャ設計をもたらすために、スプリングの利点である、渡されます。

リリース6元記事 ウォンの賞賛3 ビュー797

おすすめ

転載: blog.csdn.net/SmileLucki/article/details/105207606