什么是Spring IOC容器? 具有哪些作用?
是什么:
控制反转即是IOC,它把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理,所谓的"控制反转"概念就是对组件对象控制权的转移,从程序代码本身转移到了外部容器.Spring IOC负责创建对象,管理对象(通过依赖注入(DI),装配对象,配置对象,并且管理这些对象的整个生命周期)
对于IOC来说,最重要的就是容器,容器管理者Bean的生命周期,控制Bean的依赖注入.
有什么作用:
-管理对象的创建和依赖关系的维护,对象的创建么并不是一件简单的事,在对象关系比较复杂时候,如果依赖关系需要程序员快来维护的话,那是相当头疼的
-解耦,由容器去维护具体的对象
-托管了类的产生过程,比如我们需要类的产生过程中做一些处理,最直接的例子就是代理,如果有容器程序可以把这部分处理交给容器,应用程序则无需去关心类是如何完成代理的
IOC的优点是什么?
-最小的代价和最小的侵入性使松散耦合得以实现
-IOC容器支持加载服务器的饿汉式初始化和懒加载