スプリングコンテナの起動プロセス
Springコンテナの起動プロセスを以下に示します。
- SpringコンテナはXMLファイル、Javaアノテーション、Java構成クラスなど、1つ以上の設定ファイルを読み込む必要があります。
- BeanFactoryオブジェクトの作成: Springコンテナは設定ファイルの定義に基づいてすべてのBeanを管理するBeanFactoryオブジェクトを作成します。
- Springコンテナは、設定ファイルを読み込み、そこに記載されたBeanの情報(名称、型、依存関係など)を読み取ります。
- Spring のコンテナは、構成ファイルに定義されたとおりに Bean インスタンスを作成し、それらをコンテナに格納します。
- 依存性注入:Springコンテナは、設定ファイル内の依存関係に従って、Bean間の依存関係を自動的にBeanの対応するプロパティへ挿入します。
- Bean の初期化: Spring コンテナは、各 Bean の初期化メソッドを呼び出します。初期化メソッドは、設定ファイルの init-method 属性または InitializingBean インターフェースの実装によって指定できます。
- SpringコンテナはBeanを作成して初期化したあと、Beanをコンテナに登録します。これにより、他のBeanは名前または型でそのBeanを取得できます。
- Springコンテナ起動完了:Springコンテナが起動されると、そのコンテナ内のオブジェクトはBeanを取得することで利用できるようになる。
つまり、Springコンテナの起動処理は、設定ファイルを読み込み、BeanFactoryを作成し、設定ファイルを解析し、Beanインスタンスを作成し、依存関係を注入し、Beanを初期化し、Beanを登録し、起動を完了するなどの手順が含まれています。これらの手順を通じて、Springコンテナはアプリケーション内のすべてのBeanオブジェクトを管理および制御できます。