(五)java深入java虚拟机及大数据笔记库(53)
2018-01-10 08:48
295 查看
目录 :
五. 请解释下Spring框架中的IOC?
六. BeanFactory和ApplicationContext有什么区别?
一. 请解释下Spring框架中的IOC?
1 ) . 包 : Spring中的 org.springframework.beans 包 和org.springframework.context 包构成了spring框架IOC容器的基础
2 ) . 接口 : BeanFactory接口提供了一个先进的配置机制,使得任何类型的对象的配置成为可能
2.1 AplicationContext接口对BeanFactpry(是一个子接口)进行了扩展,在BeanFactory的基础上添加了其他功能
例如 :
[1]与Spring的AOP更容易集成
[2]提供了处理message resource的机制(用于国际化)
[3]事务传播以及应用层的特别配置
[4] 针对Web应用的webApplicationContext
3 ). org.springframework.beans.factory.beanFactory是Spring IOC容器的具体实现,用来包装和管理前面提到的各种Bean
3.1 BeanFactory接口是Spring IOC容器的核心接口
二. BeanFactory和ApplicationContext有什么区别?
1 ) . BeanFactory :
1.1 BeanFactory可以理解为含有bean集合的工厂类
1.2 BeanFactory包含了各种bean的定义,以便在接收到客户端请求时将对应的bean实例化
1.3 BeanFactory还能在实例化对象时生成协作类之间的关系,此功能可将bean自身与bean客户端的配置中解放
d100
出来
1.4 BeanFactory还包含了bean生命周期的控制,调用客户端的初始化方法(initialization methods) 和销毁方法(destruction methods)
2 ) . Application context :
2.1 表面上看,如同bean factory一样具有bean定义,bean关联关系的设置,根据请求分发bean的功能
2.2 但 application context在此基础上提供了其它功能
[1] 提供了支持国际化的文本消息
[2]统一的资源文件读取方式
[3]已在监听器中注册的bean的事件
2.3 以下是三种常见的ApplicationContext的实现方式 :
[1] ClassPathXmlApplicationContext : 从classpath的XML配置文件中读取上下文,并生成上下文定义 -->应用程序上下文从程序环境变量中取得
ApplicationContext context= new ClassPathXmlApplicationContext("bean.xml");
[2] FileSystemXmlApplicationContext : 由文件系统中的XML配置文件读取上下文
ApplicationContext context= new FileSystemXmlApplicationContext("bean.xml");
[3]XmlWebApplicationContext : 由Web应用的XML文件读取上下文
相关文章推荐
- 【笔记】深入理解 java 虚拟机---运行时数据区域
- (五)java深入java虚拟机及大数据笔记库(59)
- (五)java深入java虚拟机及大数据笔记库(52)
- 《深入理解 Java 虚拟机》学习笔记(1)—— JVM 运行时数据区
- (五)java深入java虚拟机及大数据笔记库(55)
- (五)java深入java虚拟机及大数据笔记库(56)
- (五)java深入java虚拟机及大数据笔记库(50)
- (五)java深入java虚拟机及大数据笔记库(65)
- 深入理解Java 虚拟机(周志明)笔记(二)——Java数据分区
- (五)java深入java虚拟机及大数据笔记库(49)
- 《深入理解 Java 虚拟机》学习笔记(1)—— JVM 运行时数据区
- (五)java深入java虚拟机及大数据笔记库(51)
- (五)java深入java虚拟机及大数据笔记库(58)
- (五)java深入java虚拟机及大数据笔记库(64)
- (五)java深入java虚拟机及大数据笔记库(57)
- 《深入理解 Java 虚拟机》- 笔记 - Java 运行时数据区域
- (五)java深入java虚拟机及大数据笔记库(63)
- (五)java深入java虚拟机及大数据笔记库(61)
- (五)java深入java虚拟机及大数据笔记库(54)
- 《深入理解 Java 虚拟机》学习笔记(1)—— JVM 运行时数据区