JavaEE主流框架总结~02.Spring IOC
JavaEE主流框架总结~02.Spring IOC上一期Spring 运行原理 Spring 启动时读取应用程序提供的 Bean 配置信息,并在 Spring 容器中生成一份相应的Bean 配置注册表,然后根据这张注册表实例化 Bean,装配好 Bean 之间的依赖关系,为上层应用提供准备就绪的运行环境。 
JavaEE主流框架总结~02.Spring IOC
上一期
Spring 运行原理
Spring 启动时读取应用程序提供的 Bean 配置信息,并在 Spring 容器中生成一份相应的Bean 配置注册表,然后根据这张注册表实例化 Bean,装配好 Bean 之间的依赖关系,为上层应用提供准备就绪的运行环境。
Spring会先把bean加载到spring的容器中,形成一个bean定义注册表。然后根据注册表里面的信息去将配置的所有bean对象都做一个实例化放到缓存池里面
当我们要用到bean方法的时候,其实都是从SpringIOC的缓存池里面取得的Bean对象
ApplicationContext
ApplicationContext 内部封装了一个BeanFactory 对象,来实现对容器的操作,BeanFactory封装了 bean 的信息,而 ApplicationContext 通过访问 BeanFactory 对象获取 bean 的对象信息ApplicationContext 也实现了一系列的 BeanFactory 接口( 可以说 ApplicationContext 对BeanFactory 对象实现一种代理)。
ApplicationContext 在应用这个 DefaultListableBeanFactory 对象的基础上,不仅实现了BeanFactory 接口提供的功能方法,并且黏合了一些面向应用的功能,如资源/国际化支持/ 框架事件支持等
EnvironmentCapable
用于在接受BeanFactory的框架方法中执行{@code instanceof}检查
ListableBeanFactory
接口的扩展将由bean工厂实现 。可以枚举其所有bean实例,而不是尝试bean查找
HierarchicalBeanFactory
bean的相应{@code setParentBeanFactory}方法允许将父级设置为可配置的工厂
MessageSource
解决消息的策略界面,支持参数化
ApplicationEventPublisher
封装事件发布功能的接口。
ResourcePatternResolver
解决位置模式的策略界面(例如, 一个Ant样式的路径模式)到Resource对象。
ClassPathXmlApplicationContext
refresh()方法
在 BeanFactory 子类中有一个 DefaultListableBeanFactory 类,它包含了基本 Spirng IoC 容器所具有的重要功能,开发时不论是使用 BeanFactory 系列还是 ApplicationContext 系列来创建容器基本都会使用到 DefaultListableBeanFactory 类,可以这么说,在 spring 中实际上把它当成默认的 IoC 容器来使用
更多推荐
所有评论(0)