2009-03-10 13 views
10

Spring Frameworkとは何ですか? Hibernateへの貢献は何ですか?ここでSpring Framework

+11

なぜすべての否定投票ですか?これは、経験のない人が春について学びたいと思っていたか、そうするように任されていたようです。方向を尋ねると、叩かれてしまうわけではありません。 – Ascalonian

+3

Stack Overflowを嫌う上位10の理由は、Redditとしての揮発性です。 – Adam

+0

[.NETのSpringのバージョン](http://www.springframework.net/)もあります。 – Glenn

答えて

12

にHibernateオブジェクトリレーショナルマッピングツール、SunのエンティティBean 2.0に代わるものです。 Hibernateは、Javaのオブジェクト永続化のための長年にわたって「デファクトスタンダード」となっており、今日のJPA APIはHibernate(JPA実装として使用可能)に非常に触発されています。

Springは、コンポーネントを配線し、宣言型トランザクション管理、宣言型セキュリティ、他の多くのフレームワークとの統合、抽象化レイヤーなどの追加サービスから利益を得るための依存性注入フレームワークです。エンタープライズJavaアプリケーション開発を容易にするためにSpringが作成されました。 EJBと "ヘビーウェイト"コンテナなしで可能にすることです。 SpringとHibernateでTomcat、素晴らしいエンタープライズスタックを手に入れることができます。 Springは「軽量」コンテナです。

SpringとHibernateは、Javaアプリケーションの構築方法に大きな影響を与えており、その採用は単純化の必要性を証明しています。にもかかわらず、Java EE 5は、Java Enterprise開発を簡素化するためのこれらの「非標準的な」ソリューションに対するSunの答えです。

Spring Hibernateは広く使用されており、SpringはHibernate(JPA)統合を提供していますが、SpringとHibernateは分離されたボードとガバナンスを持つ2つの異なるプロジェクトです。彼らは相互利益を持っていますが、IMOはHibernateチームがHibernateを管理し、SpringチームはSpringを管理します。

1

SpringとHibernateは、一緒に使用することができますが、それ以外は互いに関係のない2つの独立したフレームワークです。

Hibernateは、オブジェクト・リレーショナル・マッピング・ツールです。これは、リレーショナルデータベーステーブルに関連付けられているドメインオブジェクトを扱う開発者を支援します。 Hibernateを使用する場合、データベースにプログラムで接続するか、結果セットを解析するなどの複雑な作業は大幅に最小限に抑えられます。

Spring Frameworkはいくつかのツールを提供するものであり、すべて少数のコアコンセプトに基づいています。これらのコンセプトの中で最も有名なものは依存性注入であり、これはオブジェクトの緩やかな結合を可能にし、開発やテストを容易にすることができます。

出荷時の設定では、Springは他のフレームワークとうまく連携するためのいくつかのツールを提供しています.Hibernateもその1つです。 Hibernateは素晴らしいツールですが、データベース操作と例外処理を実行するコードの作成に関してはある程度の複雑さがあります。 SpringのHibernate Templateはこの問題を解決しようとします。これはおそらくあなたが彼らの "貢献"を意味するものですが、Hibernateの背後にいる人々はこのサポートの大きなファンではありません。

Springを使用せずにHibernateまたはHibernateを使用せずにSpringを使用できます。 HibernateとSpringを使用するが、Spring Hibernateテンプレートを使用しないプロジェクトを持つことさえできます。

7

Spring Framework(http://www.springframework.org)は、Java EEベースのアプリケーションの開発スタックです。 dependency injectionコンテナとして始まったのは、エンタープライズアプリケーション向けにPOJOベースのプログラミングモデルに進化し、一般的に使用されるサービスや抽象化(トランザクション管理、キャッシング、バッチ処理など)をそのまま受け入れました。

Hibernate(これはobject-relational mappingフレームワークです)と直接の関係はありませんが、ORMモジュール内でSpringはそのための統合レイヤーを提供しています。休止状態と連動して、それを使用する利点の中には:(透過的にSpringのAOP機構を介して適用される)宣言型トランザクション区分を使用する

  • 能力から抽象へのデータアクセス層(のための

  • 例外翻訳春は実際に)私の知る限り(Hibernateに寄与しないながらDAOインタフェースを実装するために使用される実際の永続化技術)

だから、それは、Hibernateと非常によく機能し、いくつかの詐欺を提供しますベネフィットメリット

0

Springは、J2EE開発をより簡単に、迅速に、スケーラビリティにする軽量コンテナ(およびフレームワーク)です。これは、Hibernateとの素晴らしい統合機能を備えています。

0

Springフレームワーク

  • 強力なオープンソース。
  • 軽量アプリケーションフレームワーク。
  • 全体の複雑さを軽減します。
  • 総合的なツール。
  • フレームワークのフレームワーク。
  • リソースの配列を利用できます。

なぜSpringが普及しているのですか?

  • MVC
  • それがインターフェイスを利用するようにフレキシブル。
  • テストが簡単です。
  • IOC。
  • ビュー技術との統合性が向上しました。
関連する問題