对于spring ioc应该有很多人都很了解吧,但是有一些小伙伴表示,对于spring ioc的实现原理并不是很清楚,那么下面就一起来看看吧。
1、spring ioc是什么?
首先来简单的对spring ioc进行一下了解。
spring ioc指的是控制反转,注意,控制反转它不是什么技术,它是一种设计思想,IOC容器负责实例化、定位、配置应用程序当中的对象以及建立这些对象间的依赖,交由Spring容器统一进行管理,从而实现松耦合。
在java开发当中,ioc就意味着,将你设计好的对象交给容器控制,而不是说,传统的在你的对象内部直接控制。
2、ioc实现原理
下面来讲一下ioc的实现原理。
使用反射机制+xml技术。
下面是整个流程的示意图,可以仔细的看看哦。
从示意图当中能够看出,web容器启动时,spring的全局bean的管理器会去xml配置文件中扫描的包下面获取到所有的类,并且,会依据你使用的注解,进行对应的封装,封装到全局的bean容器中进行管理。
只要,容器初始化完成,beanID和bean实例化的类对象信息就全部存在了。
现在的话,需要在某个service里面调用另一个bean的某个方法时,只要依赖注入进来另一个bean的Id就可以了。
调用时,spring会去初始化完成的bean容器当中获取就可以了。
假如,存在就将依赖的bean的类的实例化对象返回给你,你就可以调用依赖的bean的相关方法或属性等。
spring ioc实现原理就给你介绍到这里了。更多java常见问题及解决方法请继续关注奇Q工具网来进行了解吧。
推荐阅读: