Spring Framework
オープンソースのESB実装です。オープンソースで企業内システムを統合したい今日この頃。 ネタはServiceMixから http://servicemix.org/
ISBN:0764574833:detail 早速読みます。
Springには非常に有能なWebフレームワークがある。自動Formデータバインディング、検証、マルチパートリクエストハンドリング、複数ビューなど。ここでは、ほかのWebフレームワークを紹介する。 Struts WebWork Tapestry
Springが唯一の軽量コンテナではありません。長い間、JavaデベロッパはEJBの代替技術を探してきました。結果、DIコンテナにたどり着きました。 PicoContainer 超軽量コンテナ、セッターのDI、コンテナのみの提供 HiveMind 超軽量コンテナ、セッターのDI、AOP…
第一にEJBは標準技術である。JCPによって標準が決まっている。いろいろ問題点はあったので、EJB3.0からはDI要素が入っている。では、現時点でのSpringとEJB2.0系を比較する。Spring vs EJB トランザクション管理 Spring:JTA,Hibernate,JDO,JDBCをサポートす…
エンタープライズなアプリケーションは、セキュリティやトランザクション管理を必要とします。例えば、UserTransaction使ったやつとか。EJBの場合、トランザクション管理をEJB配備記述子に書くことができます。んで、Springでも書けます。 サービスクラスの…
複数のサービスをまたいで、それぞれLogging、Security、Transactionのモジュールを呼んでいるのは、主とするビジネスロジックを見えにくくし、問題を複雑にする。そこでAOPを用いて、主とするビジネスロジックだけをサービスに記述することができる。 例え…
MartinFowler的には、Dependency Injection(DI)だというツッコミで、IoCからDIになります。DIを理解するには、誰が誰を呼んでいるか考える。例えば、Carクラスの定義で、Engineインタフェースを実装したV6Engineを記述すると、CarクラスはV6Engineクラスに…
HelloWorldって出力するサンプルです。 インタフェースの定義 実装クラスの定義 設定ファイルの記述 実行クラスの定義 インタフェースの定義 HelloServiceインタフェースの定義 public interface HelloService{ public void sayHello(); } 実装クラスの定義 …
Springには7つのモジュールが用意されていますので、実際にエンタープライズな開発をする際には、一からすべてを作る必要はありません。それらのモジュールを組み合わせればいいわけです。 coreモジュール Applicationコンテキストモジュール Spring AOPモジ…
軽量 SpringFramework自体はJarファイルで配布されていて1MB以下です。でも、実際使うには依存するクラスライブラリが多数存在します。 制御の反転(IoC) Springは柔軟に結合するIoCという手法をとっています。 アスペクト指向 アスペクト指向プログラミン…
よい設計は既存の技術より重要だ。 JavaBeansと柔軟に結合するinterfaceは良いモデルだ。 コードはテストしやすくするべきだ。
J2EEデベロッパのAlexはJ2EEモジュールを書く際に、EJBを使うことになり、それに伴って、幾つかのクラスを書かなければならなかった。それでXDocletをプロジェクトに導入した。XDocletはコードジェネレーションツールなので、EJBの各種必要ファイルを1つのソ…
基本を勉強しようってことで、Spring in Actionをやります。この本は3部構成になっていて、 Spring入門 Springジャンプスタート Beanの記述 アスペクトの作成 ビジネス層のSpring DBをたたく トランザクション管理 エンタープライズサービスのアクセス WEB層…
Spring Frameworkって去年の6月からハマっています。気になったこと書くつもり。 Spring in Action と Pro Spring を読んで理解する予定未定。