Pages

Spring Framework

2014年6月14日土曜日

Spring Framework は、Javaプラットフォーム向けのオープンソースアプリケーションフレームワークである。単に Spring とも呼ばれる。Rod Johnson が自著 Expert One-on-One J2EE Design and Development(Wrox Press、2002年10月)と共にリリースしたのが最初である。.NET Framework 向けの移植版もある。2006年、Spring Framework 1.2.6 は Jolt productivity award を受賞した。

Spring Framework は特定のプログラミングモデルを強制するものではないが、Javaコミュニティでは Enterprise JavaBeans (EJB) モデルの代替・置換・追加として広く認知されつつある。設計上、このフレームワークはJava開発者の自由度を高くしているが、ドキュメントが豊富であり、よくある状況に使える使いやすいソリューションを提供する。

Spring Framework の中核機能は任意のJavaアプリケーションで使えるが、Java Platform, Enterprise Edition 上に Web ベースのアプリケーションを構築するための拡張や改善が豊富に用意されている。その用途で Spring を使うことが多く、注目されている。
最初のリリースは、2003年6月で、Apache License 2.0 でライセンスされていた。1.0 がリリースされたのは2004年3月である。

モジュール

  • 制御の反転コンテナ: 主に依存性の注入によって、アプリケーションのコンポーネント配置と Java オブジェクトのライフサイクルを管理
  • アスペクト指向プログラミング: クラス横断的な処理の実装を可能とする
  • データアクセス: JDBCとオブジェクト関係マッピングツールを用い、Javaプラットフォーム上でRDBアクセス機能を提供。また、NoSQL系データベースもサポート
  • トランザクション管理: 各種トランザクション制御APIを統合し、Javaオブジェクトのトランザクション管理を提供
  • Model View Controller: HTTPとServletベースのフレームワークで、WEBアプリやREST準拠WEBサービスの拡張とカスタマイズのためのフックを多数提供している。
  • リモートアクセスフレームワーク: 利用者の定義に従い、RPCの形態でJavaオブジェクトをネットワーク上でインポートまたはエクスポートする。サポートする通信プロトコルとしては RMI、CORBA、Webサービスを含むHTTPベースのプロトコル (SOAP) などがある。
  • 設定より規約: en:Spring Roo モジュールによって、Spring ベース業務アプリケーションのRAD(開発迅速化)ソリューションを提供
  • バッチ処理: 大量データ処理向けのフレームワークとして次のような機能を提供:ログ取得、トランザクション管理、統計情報取得、ジョブの再起動や起動抑止、資源管理
  • 認証・認可フレームワーク: en:Spring Securityサブプロジェクト(従前の Acegi Security System for Spring)の成果物を用い、利用者定義に従った認証・認可機能を提供。各種標準、プロトコル、ツール、手法をサポート
  • リモート管理フレームワーク: JMXを使ったローカルおよびリモートのJavaオブジェクトの構成管理。
  • メッセージフレームワーク: 標準的なJMSの API に対する機能拡張。利用者定義に従い、JMS のメッセージキューから透過的にメッセージ受信するためのリスナーオブジェクトを登録可能とする
  • テスト機能: 単体テストと結合テストを書くためのクラス群を提供

基本プロジェクト

  • Spring Security
  • Spring Integration
  • Spring Batch
  • Spring Data
  • Spring Web Flow
  • Spring Web Services
  • Spring Mobile
  • Spring Social
  • Spring Android

ホームページ

http://spring.io/

ドキュメント

http://docs.spring.io/spring-framework/docs/

0 件のコメント:

コメントを投稿

 

OpenSource Software

人気投稿