3.3. Bean overview

3.3.1 Naming beans

Beanの定義の基礎について。

すべてのbeanはひとつ以上の名前を定義できる。普通は名前はひとつだけど。複数のエイリアスをつけることもできる。
Bean名はid属性かname属性で定義する。idはXML elementのidなのでXMLで唯一でないといけないのでこっち使うとよい
XMLパーサーでチェックアウトできるから)。


ただXMLのID属性は、時々指定できない文字列があるので、こういう時はnameを使うとよい。


nameやidを指定しないこともできる。その場合はspirngが自動的にnameを割り当てる。なのでこの場合はIDを指定するなどは使えず、
innner beanやautowireingしか使えない。

3.3.1.1 Aliasing a bean outside the bean definition

エイリアスをbeanの外部で定義する例。こんな感じ。




3.3.2 Instantiating beans

SpringのコンテナがBeanを生成する方法には、以下の二つがある

  1. デフォルトコンストラクタ
  2. ファクトリメソッド

3.3.2.1 Instantiation with a constructor

普通はこっち。デフォルトコンストラクタ呼び出しで生成される。



3.3.2.2 Instantiation with a static factory method




とやると、ClientServiceのstaticメソッド「createInstance」を呼ぶ。

3.3.2.3 Instantiation using an instance factory method



とやると、factory-beanで定義された名前を持つbeanのインスタンスメソッド「createInstance」を呼ぶ。このfactory-beanは生成されるbeanと別物でよい。