前段时间是校招的高峰期啊,很多学弟,学妹们出去面试的时候都会被问到一个问题,谈谈你对Spring的理解?
很多同学都是会说一些IOC,AOP等,但是聊到一些细节IOC里面的细节点,就不知怎么接着和面试官怎么聊了。
所以今天我就跟大家具体详细聊聊SpringIOC 那些事!!!
spring 首先它是一个框架,在我们的开发工作的环境中,所有的其他的框架基本都依赖Spring,spring起着一个容器的作用,用来承载我们整体的bean对象。它帮我们整理了整个bean的从创建到销毁的管理。
类的创建、销毁都由 Spring 来控制,也就是说控制对象生存周期的不再是引用它的对象,而是 Spring来控制整个过程。对于某个具体的对象而言,以前是它控制其他对象,现在是所有对象都被 Spring 控制。
看到这里其实这都是一些简单的理解,以及一些官方的说法,为了真正的搞懂什么是SpringIoc,就上面的这些东西是远远不够的,所以我给大家画了一个流程图,跟着这个流程图,我们一步一步来解析IOC。
只有解析完了流程,我们才能有一个整体的架构的脉络思路,后面我们再聊DI(依赖注入)以及怎么处理的缓存依赖。
这里跟大家分享一个知识点,在看一些架构的源码的时候,大家一定要先理清整体架构的脉络,这样才能方便我们理解整个架构,否则就是一面茫然,不知道写的是啥!!!
话不多说了,还是直接来看下这个整体流程图!!!