2008年06月11日

1.2 Usage Scenarios

上述した各モジュールを使用して、さまざまな状況でSpringを使用することができます。アプレットから本格的なエンタープライズアプリケーションにいたるまで、Springのトランザクション管理機能やWeb統合機能を使用することができます。

[図:Springを使用した本格的なWebアプリケーションの典型]

Springの宣言的トランザクションマネジメントによって、WebアプリケーションにEnterprise Java Bean(EJB)のコンテナ管理トランザクションを使用するのと同様のトランザクション管理を適用することができます。すべてのビジネスロジックは、IoCコンテナ管理の下でシンプルなPOJOとして実装することができます。Web層から独立ているE-mail送信やバリデーションなどの補助的なサービスは、バリデーションルールを適用する場所を制限しません。ORMサポート機能はJPA、Hibernate、JDO、iBatisと違和感なく統合されています。たとえばHibernateを使用する際に既存のマッピングファイルとHibernate標準のSessionFactoryの設定を使用することができます。フォームコントロールはドメインモデルを持つWeb層と統合され、ActionFormやHTTPパラメータをドメインモデルに詰め替えるという作業を不要なものとします。

[図:サードパーティのWebフレームワークを使用したSpringの中間層]

完全に別のフレームワークに移行するということができない状況ということもあるでしょう。Spring Frameworkはそのすべてを使用することを強いる仕組みは採用していません。WebWork、Struts、Tapestryあるいはその他のUIフレームワークを使用した既存のフロントエンドを、Springのトランザクション機能を使用した中間層とをきれいに統合することは簡単なことです。しなければならない事は、ビジネスロジックをApplicationContextを使用して組み上げ、WebApplicationContextを使用してWeb層をまとめ上げることだけです。

[図:リモート使用シナリオ]

Webサービスを使用して既存のコードにアクセスする場合は、SpringのHessianProxyFactory、BurlapProxyFactory、RmiProxyFactory、JaxRpcProxyFactoryのいずれかを使用することができます。既存のアプリケーションに、ある日から急にリモートアクセスすることになったとしても、それはもはや難しいことではありません。

[図:既存のPOJOをラップするEJB]

Spring FrameworkはEJBへのアクセスレイヤおよび抽象化レイヤを提供します。これにより既存のPOJOをStateless Session Beanにラップすることができます。これは宣言的セキュリティを必要とする拡張性がありフェイルセーフなWebアプリケーションの一部としてこのPOJOを再利用できるということです。

原文:http://static.springframework.org/spring/docs/2.5.x/reference/introduction.html#overview-usagescenarios
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/100217448

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。