まず、どのような春ができますか?
春は、軽量、非侵入のJava / JavaEEのアプリケーションフレームワークです。春は以前にのみEJBによって行われることを行うために使用される基本的なJavaBeanです。しかし、Springの使用は、サーバー側の開発に限定されるものではありません。Javaアプリケーションの大半は、春の観点から単純、テスト容易性と疎結合から利益を得ることができます。
コアは、コントロールの春反転(IOC)と対向する部分(AOP)です。簡潔には、スプリングは、層状するJavaSE / EEフルスタック(停止)軽量オープンソースフレームワークです。
二、あなたは春を行うことができますか?
一般的には、効果的に、より良い問題を解決し、システム構造より良い、より優れたパフォーマンスを作るために、全体を形成するために一緒に統合する技術の多くを入れて、春にはスーパー「糊」のプラットフォームとして使用することができる、と述べました。(アーキテクチャ設計を反映:モジュラー、プレハブ、プラグ、再利用性、非侵襲性、等)。
多くのことができる春、具体的には、以下のいくつかの基本的な:
- IOC / DI
- AOP
- JDBCとのORMのサポート
- 物事のサポート
- 様々な技術の統合
- Webアプリケーションフレームワーク(Spring MVCの)
三、春は何?
チャートから分かるばねは再びなる構成する約20のモジュールの合計含有コアコンテナモジュール、データアクセス/統合部、Webパーツ、AOP支持部を、いくつかの部品をテストします。
容器の芯部(コアコンテナ)
- 豆とコアモジュール:IoCのと依存関係注入特性を提供する、春の最も基本的な機能を提供します。
- コンテキストモジュール:構築するために、コアと豆に基づいて、そのオブジェクトにアクセスするためのスタイルの方法、JNDIレジストリのようなものでフレームワークを提供します。コンテキストカプセル化されたパケットは、機能豆パッケージを継承も増加国際(I18N)、イベント伝播、リソースローディング、透明でコンテキストを作成します。
- 式言語:式言語モジュールは、オブジェクトグラフ中のクエリと操作を実行する機能を提供します。
データアクセス/統合部分(データアクセス/統合)
- JDBCモジュール:退屈なJDBCコーディングやデータベースベンダ固有のエラーコードを解析を排除JDBCの抽象化を提供します。
- ORMモジュールは:統合レイヤーAPIをマッピングする共通の「オブジェクト/リレーショナル」を提供します。これらを含める:JAP、JDO、Hibernateは、iBatisのを。
- OXMモジュール:サポートとXMLは、抽象レイヤマッピングオブジェクト、JAXB、キャスター、XMLBeansでは、JiBXに、XStreamのを含みます。
- JMSモジュール:「ニュースの生産者、消費者は」簡単に使用JMS用のテンプレートのセットを提供します。
- 取引モジュール:簡単な宣言的トランザクション管理により、プログラムのサポート、限りSpring管理オブジェクトは春のトランザクション管理を受けることができよう。
Webパーツ
- Webモジュール:基本的なWeb機能を提供します。
- ウェブサーブレットモジュール:達成するために、Webアプリケーションのモデル - ビュー - コントローラ(MVC)を提供します。
- WebベースのStrutsモジュール:Strutsのための統合サポートを提供します。
- ウェブポートレットモジュール:実装の下でポートレットMVC環境を提供します。
AOPの一部
- AOPモジュール:スケジュールすることができるように、AOPアライアンス標準アスペクト指向によるプログラミングラインを提供する:メソッドインターセプタとエントリポイント。
- 側面モジュール:AspectJの者の統合を提供します。
- Instrumenttationモジュール:ClassLoaderクラスをサポートし、実装するために、クラスレベルのツールの数を提供します。
テストセクション
- テストモジュールは:春のコンポーネントをテストするためのJUnitやTestNGのを使用するためのサポートを提供し、それはあなたがテストコードを分離できるように、それはまた、モックオブジェクトを提供し、一貫性のあるApplicationContextsを提供し、これらのコンテキストをキャッシュします。
四、Springの利点
- 開発(高凝集および低い結合)を簡素化する便利デカップリング
- 春の大工場(コンテナ)である、あなたは春の管理に、すべてのオブジェクトと依存関係のメンテナンスを作成することができます。
- 生成するための春の豆工場
- AOPプログラミングのサポート
- 春はアスペクト指向プログラミングを提供し、あなたは簡単に傍受するプログラムの許可、操作の監視と他の機能を実装することができます。
- 宣言型トランザクションのサポート
- あなただけが手動でプログラミングすることなく、事務の構成管理を完了する必要があります。
- テストプログラムを容易にするために、
- 春Junit4のサポートのために、あなたは簡単に春の注釈でプログラムをテストすることができます。
- 優れたフレームワークの様々な容易な統合
- スプリングは、優れた内部フレームワークを数多く提供して優れたオープンソースのフレームワーク、種々の除外するものではない:直接サポート(等ストラット休止、MyBatisの、石英など);
- JavaEEのAPIの使用を削減することの難しさ
- いくつかのAPIのJavaEE開発のための春は、(JDBC、JavaMailの、リモート呼び出し、など)を使用することは非常に困難である大幅にこれらのAPIアプリケーションの難しさを軽減パッケージを提供します。
- Javaソースコードの学習の典型的な例です
- 春のソース絶妙なデザイン、明確な構造は、想像力、いつものJavaデザインパターンとJava技術の深い知識の柔軟な使用のマスターを体現しています。春のフレームワークのソースコードは、Java技術の最良の実践例です。あなたはすぐに短い時間で自分のJava技術とアプリケーションの開発レベルを向上させたい場合は、学習や研究春のソースを使用すると、予期しない結果を受け取るようになります。