我们都知道spring有2个最重要的概念,IOC(控制反转)和AOP(依赖注入)。今天我就分享一下spring源码的IOC。 IOC的定义:直观的来说,就是由spring来负责控制对象的生命周期和对象间的关系,将对象之间的关系抽象出来,通过spring容器控制对象生成时机,减少对象之间的耦合度。 更 ...
分类:
编程语言 时间:
2017-07-05 20:08:05
阅读次数:
171
AliasRegistry:定义对alias的简单增删改操作 SimpleAliasRegistry:主要使用map作为alias的缓存,并对接口AliasRegistry进行实现。 SingletonBeanRegistry:定于对单例的注册及获取。 BeanFactory:定义获取bean及be ...
分类:
编程语言 时间:
2017-06-22 00:12:51
阅读次数:
159
概述: Spring是一个企业级的开源框架。它提供轻量级的依赖注入、面向切面编程、全方位的整合框架。下图是Spring框架的组成部分,各部分内容作了简单说明。依赖注入: 依赖注入是Spring框架的灵魂。它是一种解耦组件之间关系的高层设计模式。依赖注入案例分析: 现在有一个业务流程中需要把数据保存到 ...
分类:
编程语言 时间:
2017-06-04 09:50:44
阅读次数:
213
获取bean的过程如上图所示。下一章将继续图示讲解createBean的过程。 ...
分类:
编程语言 时间:
2017-06-04 09:50:07
阅读次数:
231
spring中的refresh是一个相当重要的方法。它完成IOC的第一个阶段,将xml中的bean转化为beanDefinition.详细说明如上图所示。 在上图中,创建obtainFreshBeanFactory的过程值得展开来讲。而IOC的第二个阶段是getBean,都将在后续讲解。 ...
分类:
编程语言 时间:
2017-06-04 09:46:46
阅读次数:
173
继上一章refresh之后,上图描述了obtainFreshBeanFactory过程。 ...
分类:
编程语言 时间:
2017-06-04 09:41:56
阅读次数:
224
BeanFactory 上一章中,我们提过Spring的依赖注入容器是BeanFactory。BeanFactory是一个基础接口,它有一个默认实现类:DefaultListableBeanFactory。我们可以由它为出发点看看Spring的类层次结构。如下图所示: 上图中,有一个值得我们学习的设 ...
分类:
编程语言 时间:
2017-06-04 09:41:14
阅读次数:
241
如果我们在web项目里面使用spring的话,通常会在web.xml里面配置一个listener. <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> ...
分类:
编程语言 时间:
2017-06-03 23:34:27
阅读次数:
199
Spring IOC设计原理解析:本文乃学习整理参考而来 一、 什么是Ioc/DI? 二、 Spring IOC体系结构 (1) BeanFactory (2) BeanDefinition 三、 IoC容器的初始化 1、 XmlBeanFactory(屌丝IOC)的整个流程 2、 FileSyst ...
分类:
编程语言 时间:
2017-05-29 00:26:41
阅读次数:
351