Spring学习——Spring核心容器的创建

Spring容器概述

Spring容器会负责控制程序之间的关系,而不是由程序代码直接控制。Spring为我们提供了两种核心容器,分别为BeanFactoryApplicationContext

BeanFactory

实例创建
BeanFactory beanFactory = new XmlBeanFactory(new FileSystemResource(“XML配置文件的位置”));

ApplicationContext

ApplicationContext是BeanFactory的子接口,是另一种常用的Spring核心容器。

实例创建(常用的两种方法)

  1. 通过ClassPathXmlApplicationContext创建
    ApplicationContext applicationContext = new ClassPathXmlApplicationContext(String configLocation);

ClassPathXmlApplicationContext会从类路径classPath中寻找指定的XML配置文件,在Java项目中,会通过ClassPathXmlApplicationContext装载完成ApplicationContext的实例化工作。而在Web项目中,ApplicationContext容器的实例化工作会交由Web服务器来完成,通过ContextLoaderListener来实现,此种方式只需要在web.xml中添加如下代码。


               contextConfigLocation 
               
                          classpath:spring/applicationContext.xml
               
        
       
               
                         org.springframework.web.context.ContextLoaderListener
               
       
  1. 通过FileSystemXmlApplicationContext创建
    ApplicationContext applicationContext = new FileSystemXmlApplicationContext(String configLocation);

FileSystemXmlApplicationContext会从指定的文件系统路径(绝对路径)中寻找指定的XML配置文件,找到并装载完成ApplicationContext的实例化工作。

创建Spring容器后,就可以获取Spring容器中的Bean。Spring获取Bean的实例通常采用以下两种方法:

  1. Object getBean(String name);
    根据容器中Bean的id或name来获取指定的Bean,获取之后需要进行强制类型转换
  2. T T getBean(Class T requiredType);
    泛型方法,无需进行强制类型转换,根据类的类型获取Bean实例

你可能感兴趣的:(Spring框架,Java,EE)