spring ioc实现原理详解

对于spring ioc应该有很多人都很了解吧,但是有一些小伙伴表示,对于spring ioc的实现原理并不是很清楚,那么下面就一起来看看吧。

1、spring ioc是什么?

首先来简单的对spring ioc进行一下了解。

spring ioc指的是控制反转,注意,控制反转它不是什么技术,它是一种设计思想,IOC容器负责实例化、定位、配置应用程序当中的对象以及建立这些对象间的依赖,交由Spring容器统一进行管理,从而实现松耦合。

在java开发当中,ioc就意味着,将你设计好的对象交给容器控制,而不是说,传统的在你的对象内部直接控制。

2、ioc实现原理

下面来讲一下ioc的实现原理。

使用反射机制+xml技术

下面是整个流程的示意图,可以仔细的看看哦。

spring ioc实现原理详解

从示意图当中能够看出,web容器启动时,spring的全局bean的管理器会去xml配置文件中扫描的包下面获取到所有的类,并且,会依据你使用的注解,进行对应的封装,封装到全局的bean容器中进行管理。

只要,容器初始化完成,beanID和bean实例化的类对象信息就全部存在了。

现在的话,需要在某个service里面调用另一个bean的某个方法时,只要依赖注入进来另一个bean的Id就可以了。

调用时,spring会去初始化完成的bean容器当中获取就可以了。

假如,存在就将依赖的bean的类的实例化对象返回给你,你就可以调用依赖的bean的相关方法或属性等。

spring ioc实现原理就给你介绍到这里了。更多java常见问题及解决方法请继续关注奇Q工具网来进行了解吧。

推荐阅读:

Spring Ioc容器的加载流程是怎样的?加载过程详解

spring ioc容器是什么?有什么作用?

spring ioc注入方式有几种?该怎么实现?