spring IOC 与DI的理解
一、IOC英文全称:Inversion of control 反转控制
在传统应用中,组件是主动从容器中获取所需要的资源,该模式的缺陷是开发人员必须知道在特定容器中获取资源的方式,增加了学习成本,降低了开发效率
而IOC思想完全颠覆了传统模式,组件不再是主动获取,改为被动接受,IOC容器主动将资源推送给组件。优点是,开发人员不用关注容器是如何创建资源对象,只需提供接受资源的方式即可,提高了开发效率
二、DI英文全称:Dependency Injection 依赖注入
组件以一些预定好的方式接受来自于容器的资源注入
DI的方式有两种:
set方法和构造方法
三、IOC和DI两者之间的关系:反转控制是思想,依赖注入是实现。即通过依赖注入实现了反转控制的思想
四、IOC容器创建对象的方式
由反射机制创建对象,如以下代码:
class4 = Class.forName("cn.itcast.Person");
而该如果要使用该反射机制,该类里必须有无参构造,若没有无参构造,会导致IOC容器创建对象失败
还没有评论,来说两句吧...