• 2022-06-03
    Spring中BeanFactory和ApplicationContext的作用和区别
  • 作用:1. BeanFactory负责读取bean配置文档,管理bean的加载,实例化,维护bean之间的依赖关系,负责bean的声明周期。2. ApplicationContext除了提供上述BeanFactory所能提供的功能之外,还提供了更完整的框架功能:a. 国际化支持b. 资源访问:Resource rs = ctx. getResource(”classpath:config.properties”), “file:c:/config.properties”c. 事件传递:通过实现ApplicationContextAware接口3. 常用的获取ApplicationContext的方法:FileSystemXmlApplicationContext:从文件系统或者url指定的xml配置文件创建,参数为配置文件名或文件名数组ClassPathXmlApplicationContext:从classpath的xml配置文件创建,可以从jar包中读取配置文件WebApplicationContextUtils:从web应用的根目录读取配置文件,需要先在web.xml中配置,可以配置监听器或者servlet来实现<listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><servlet><servlet-name>context</servlet-name><servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class><load-on-startup>1</load-on-startup></servlet>这两种方式都默认配置文件为web-inf/applicationContext.xml,也可使用context-param指定配置文件<context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/myApplicationContext.xml</param-value></context-param>

    内容

    • 0

      在Spring框架中,BeanFactory提供了管理和操作JavaBean的基本功能,但是需要通过应用代码显式实例化BeanFactory。为了加强BeanFactory及其实现提供的功能,Spring框架引入了()接口,不需要手动创建其实例,可以以声明的方式使用它。 A: Bean B: ApplicationContext C: PropertyEditor D: Aspect

    • 1

      在Spring中,为了实现对SpringIoC容器的访问,应用代码可以使用如下()接口完成。 A: Bean B: BeanFactory C: ApplicationContext D: HibernateTemple

    • 2

      在Spring框架中,BeanFactory提供了针对Bean的管理功能,而()提供了一个更为框架化的实现,覆盖了BeanFactory的所有功能,并提供了更多的特性。 A: HibernateTemple B: JDBCTtemple C: ApplicationContext D: WebContext

    • 3

      下面有关Spring依赖注入说法正确的是()。 A: IoC就是由Spring来负责控制对象的生命周期和对象间的关系 B: BeanFactory是最简单的容器,提供了基础的依赖注入支持 C: ApplicationContext建立在BeanFactory之上,提供了系统构架服务 D: 如果Bean的某一个属性没有注入,ApplicationContext加载后,直至第一次使用调用getBean方法才会抛出异常;而BeanFactory则在初始化自身时检验,这样有利于检查所依赖属性是否注入。

    • 4

      Spring从容器中获取Bean对象可以通过BeanFactory接口和()接口实现。