注釈ベースの例と XML ベースの例の両方で、Spring はNiceWriter
Bean を Bean に注入しMySpringBeanWithDependency
ます。
注釈の例では、これはクラスに で注釈が付けられているため(NiceWriter
クラスには注釈が付けられていないため)、Spring はクラスパス スキャンを介してこれを検出し、 に自動配線します。@Service
Writer
MySpringBeanWithDependency
XML の例では、NiceWriter
クラスが id を持つ Bean を定義するために使用されwriter
、これが id を持つ Bean の「ライター」プロパティとして参照されるためmySpringBeanWithDependency
です。
どちらの場合も、MySpringBeanWithDependency
Bean は Spring を介して注入された依存関係でインスタンス化されるため、すぐに使用できます。依存関係を管理する責任はありません。IWriter
これが、依存性注入(略して DI) が通常、制御の反転(略して IoC) と密接に関連している理由です。Spring は、DI を使用する IoC コンテナーを提供します。