Spring Framework Introduction

Reference Documentationに図が入ってます。この図を見るとアプリケーションがSpring APIに依存するように見えてしまうのですが、少なくとも基盤となるIoCコンテナのレベルでは、コンポーネントはSpring APIに汚染されることはありません。SpringはJavaBeans(コンポーネント), IoCコンテナ(コンポーネント依存関係解決)、AOP(システムサービスの提供)によって、肥大化したJ2EEを簡単に使えるフレームワークを提供しようとしています。MVCのコントローラから、DAOのようなデータアクセスコンポーネントAOPのポイントカットやインタセプタまでが同じJavaBeansのレベルで均一に扱えるのが、シンプルかつ強力です。

なぜ、シンプルかつ強力か。思い付くまま理由をあげてみます。