zoukankan      html  css  js  c++  java
  • Spring 的两个配置容器的讲解

        容器,从字面角度很容易理解,就是用来贮藏东西的。从计算机的角度,可粗略地分为Web容器和编程容器。
        Web容器是应用服务器中位于组件和平台之间的接口集合。如WebLogic、Tomcat等。
        编程容器容器是用来存储和组织其他对象的对象。如Java内部容器类(Map、List等)。
        容器可以管理对象的生命周期、对象与对象之间的依赖关系,您可以使用一个配置文件(通常是XML),在上面定义好对象的名称、如何产生(Prototype 方式或Singleton 方式)、哪个对象产生之后必须设定成为某个对象的属性等,在启动容器之后,所有的对象都可以直接取用,不用编写任何一行程序代码来产生对象,或是建立对象与对象之间的依赖关系。这也正是使用Spring框架给我们带来的好处。

    BeanFacotry是spring中比较原始的Factory。它无法支持spring的许多插件,如AOP功能、Web应用等。 ApplicationContext接口,它由BeanFactory接口派生而来,因而提供BeanFactory所有的功能。
    ApplicationContext以一种更向面向框架的方式工作以及对上下文进行分层和实现继承,
    ApplicationContext包还提供了以下的功能:
          • MessageSource, 提供国际化的消息访问 
          • 资源访问,如URL和文件 
          • 事件传播 
          • 载入多个(有继承关系)上下文 ,使得每一个上下文都专注于一个特定的层次,比如应用的 web层  
    BeanFactroy采用的是延迟加载形式来注入Bean的,即只有在使用到某个Bean时(调用getBean()),才对该Bean进行加载实例化,这样,我们就不能发现一些存在的Spring的配置问题。
    而ApplicationContext则相反,它是在容器启动时,一次性创建了所有的Bean。这样,在容器启动时,我们就可以发现Spring中存在的配置错误。


    如何选择使用容器?

        ApplicationContext包含BeanFactory的所有功能,几乎所有的应用系统都选择ApplicationContext而不是BeanFactory。

        只有在资源很少的情况下,才会考虑采用BeanFactory,如在移动设备上等。

  • 相关阅读:
    得物小程序解析data加解密算法
    关于mysql启动报111错误问题的可能性
    我的php笔记(一)
    近期汇编学习@20181125
    近期汇编学习
    《汇编语言》第三章
    《汇编语言》第二章
    《汇编语言》实验一:查看CPU和内存,用机器指令和汇编指令编程
    《汇编语言》第一章
    【8086汇编-Day8】实验九
  • 原文地址:https://www.cnblogs.com/baizhanshi/p/7651564.html
Copyright © 2011-2022 走看看