Java フレームワークは、簡単に理解すると、再利用可能な設計コンポーネントです。アプリケーションのアーキテクチャを規定し、設計全体と協調コンポーネント間の依存関係、責任の配分、および制御プロセスを明確にし、コラボレーションの手法として表現されます。グループ抽象クラスとそのインスタンスの間に、コンポーネントを再利用するためのコンテキスト関係が提供されます。
一般的に使用される Java フレームワークは何ですか
Struts、Hibernate、Spring が私たちが使用するフレームワークですJava 開発で一般的に使用されるフレームワークは、さまざまなアプリケーション シナリオに最適なソリューションを提供します。 しかし、これらのよく知られたフレームワークが最初にどのようにして生まれたか知っていますか?
従来の Java Web アプリケーションが JSP サーブレット Javabean を使用して実装されていることは知っています。このモデルは、最も基本的な MVC 階層化プログラム構造を実装します。フロントエンド表示を担当する JSP、プロセス ロジック制御を担当するサーブレット、データのカプセル化を担当する Javabean など、いくつかのレイヤーに分割されています。
しかし、この構造にはまだ問題があります。たとえば、ページには JSP が必要です。シンボルを使用して大量の Java コードを埋め込むと、ページ構造が複雑になります。サーブレットと Javabean は、多くのジャンプや操作、密結合、プログラムの再利用性の低さなどを引き起こします。
これらの問題を解決するために、Struts フレームワークが登場しました。これは完璧な MVC 実装です。中央制御クラス (サーブレット) を持っています。さまざまなビジネスのために、Action クラスが必要です。ジャンプおよびバックグラウンド ロジック操作の場合、1 つまたは複数の JSP ページがデータの入出力表示を担当し、Form クラスがアクションと JSP 間のデータ転送を担当します。 Struts フレームワークによって提供されるタグのセットは JSP で使用でき、HTML タグを使用するのと同じくらい簡単ですが、非常に複雑なロジックを完成させることができます。今後は、JSP ページ内で Java コードを囲む行を含める必要はなくなります。
ただし、すべての操作ロジックを Struts の Action に配置すると、Action クラスの再利用性が低くなり、ロジックがわかりにくくなるため、Web アプリケーション全体を 3 つの層に分けることが一般的です。Struts は表示層を担当します。ビジネス層は操作ロジックを完了するために呼び出され、次にビジネス層は永続化層を呼び出してデータベースの読み取りと書き込みを完了します。
JDBC 接続を使用してデータベースの読み取りと書き込みを行います。最も一般的なことは、データベース接続を開き、複雑な SQL ステートメントを使用して読み取りと書き込みを行い、接続を閉じることです。取得したデータは変換する必要がありますまたはカプセル化して外部に送信するなど、非常に面倒なプロセスです。
このとき、Hibernate フレームワークが登場し、一連の永続化クラスを作成する必要があり、各クラスの属性はデータベース テーブルの属性と単純に 1 対 1 対応しているとみなすことができます。もちろん、リレーショナルデータベースにおける各種テーブルの関連付けの対応も実装可能です。関連する操作が必要な場合、データベース テーブルに注意を払う必要はなくなります。データベースを 1 行ずつクエリする必要はなくなり、永続クラスだけで追加、削除、変更、クエリの機能を完了できます。ソフトウェア開発を、煩雑なコード指向ではなく真のオブジェクト指向にします。私の感覚では、Hibernate を使用すると、JDBC と比較してプログラミングの量が 80% 削減されます。
今、3 つのレイヤーがありますが、各レイヤー間の呼び出しは何ですか? たとえば、表示レイヤーの Struts がビジネス クラスを呼び出す必要がある場合、新しいビジネス クラスを作成してそれを使用する必要があります。ビジネス層に必要な永続層クラスを呼び出すには、新しい永続層クラスを作成する必要もあります。この新しい方法でお互いを呼び出すことは、ソフトウェア開発における最悪の設計の具現化です。簡単に言うと、呼び出し元と呼び出し先との間には強い結合が形成されており、あるクラスを別の場所で再利用したい場合には、そのクラスが依存している他のクラスも含める必要があります。プログラムは非常に複雑になり、各クラスは相互に依存し、相互に呼び出し、再利用性は非常に低くなります。クラスが変更されると、そのクラスに依存する多くのクラスが影響を受けます。この目的のために、Spring フレームワークが登場します。
Spring の機能は、クラス間の依存関係を完全に分離することです。クラスが何かに依存している場合、それはインターフェイスです。このインターフェースをどのように実装するかについては、問題ではありません。このインターフェイスを実装するクラスを取得すれば、xml 構成ファイルを介してインターフェイスを呼び出すクラスに実装クラスを簡単に挿入できます。すべてのクラス間のこの依存関係は、構成ファイルによって完全に置き換えられます。したがって、Spring フレームワークの中核は、いわゆる依存関係の注入と制御の反転です。
現在の構造は、Struts が表示層を担当し、Hibernate が永続層を担当し、Spring が中間ビジネス層を担当するというもので、この構造は現在中国で最も人気のある Java Web アプリケーション アーキテクチャです。 。また、Spring は依存性注入と AOP (アスペクト指向プログラミング) を使用しているため、その内部モデルが非常に優れており、Spring 自体も Spring MVC と呼ばれる依存性注入を使用した MVC フレームワークを実装しています。 Spring には Hibernate が統合されており、これによりトランザクション管理が Hibernate の永続層からビジネス層に昇格され、より便利かつ強力に使用できるようになります。
以上がJavaフレームワークの用途は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。