Springラーニング-Springコアコンテナの作成


Springコンテナの概要
Springコンテナは、プログラムコードによって直接制御されるのではなく、プログラム間の関係を制御します.Springは、BeanFactoryとApplicationContextの2つのコアコンテナを提供しています.
BeanFactory
インスタンスは、BeanFactory beanFactory=new XmlBeanFactory(new FileSystemResource(「XMLプロファイルの場所」)を作成します.
ApplicationContext
ApplicationContextはBeanFactoryのサブインタフェースであり、もう一つの一般的なSpringコアコンテナである.
インスタンスの作成(一般的な2つの方法)
  • C l a s P h t h XmlApplicationContextを使用してApplicationContext=new C l a ssPathXmlApplicationContext(String configLocation)を作成します.

  • ClassPathXmlApplicationContextはクラスパスclassPathから指定したXMLプロファイルを探し、JavaプロジェクトではClassPathXmlApplicationContextマウントによりApplicationContextのインスタンス化作業を完了します.Webプロジェクトでは、ApplicationContextコンテナのインスタンス化作業はWebサーバに任せる、ContextLoaderListenerによって実現される.xmlに次のコードを追加します.
    
                   contextConfigLocation 
                   
                              classpath:spring/applicationContext.xml
                   
            
           
                   
                             org.springframework.web.context.ContextLoaderListener
                   
           
    
  • F i l e S y stemXmlApplicationContextを使用してApplicationContext=new F i l e S y stemXmlApplicationContext(String configLocation)を作成する.

  • FileSystemXmlApplicationContextは、指定したファイルシステムパス(絶対パス)から指定したXMLプロファイルを探し、ApplicationContextのインスタンス化作業を完了します.
    Springコンテナを作成すると、SpringコンテナのBeanを取得できます.Spring Beanのインスタンスを取得するには、通常、次の2つの方法が使用されます.
  • Object getBean(String name); 指定されたBeanは、コンテナ内のBeanのidまたはnameに基づいて取得され、取得後に強制型変換
  • が必要となる.
  • T T getBean(Class T requiredType); 汎用メソッドは、強制型変換を行うことなく、クラスのタイプに応じてBeanインスタンス
  • を取得する.