スプリングコンテナと空


*인프런 김영한 강사님의 강좌를 참고하여 정리한 내용입니다.*

[BeanFactory]


スプリングコンテナの最上位インタフェース.スプリングシートの管理と照会を担当し、getBean()を提供します.

[Application Context]


BeanFactoryインタフェースの実装を継承するApplicationContextはSpringコンテナとして機能します.

アプリケーションの開発には、管理とクエリーの空きに加えて、多くの追加機能が必要です.したがって、ApplicationContextはBenFacotry以外の複数のインタフェースを継承します.

  • メッセージ・ソースによる国際化
    韓国から来たら韓国語、英語圏から来たら英語で出力

  • 環境変数の設定
    ローカル、開発、運用

  • アプリケーションイベント
    イベントのパブリッシュとサブスクリプションのモードを簡単にサポート

  • 便利なリソースクエリ
    ファイル、クラスパス、および外部からリソースを簡単に検索
  • スプリングコンテナを作成するには


    Springコンテナは、XMLベースまたは宣言ベースのJava設定クラスとして生成できます.
    @Configuration
    pulbic class AppConfig {
    
        @Bean
        public ... {
        ...
     
    @Configuration Arnolation付きクラスをスプリングコンテナ構成情報として使用します.ここでは、@Bean付きのメソッドをすべて呼び出すことで、反射されたオブジェクトをスプリングコンテナに登録します.このように、スプリング容器に登録されている対象をスプリングシートと呼ぶ.
    // 스프링 컨테이너 생성
    ApplicationContext ac = 
    	new AnnotaionConfigApplcationContext(AppConfig.calss);
    指定した構成情報のクラスをパラメータに登録します.

    1.スプリングコンテナの作成



    2.登録スプリング



    パラメータに渡された設定クラス情報を使用してスプリングシートを登録します.空の名前のデフォルト値はメソッド名です.直接名前を付けることもできます.
    @Bean(name="xxx")

    3.スプリング空孔依存関係の設定