转载http://blog.youkuaiyun.com/wangyihust/archive/2005/06/19/397838.aspx
IOC:控制反转
在Java设计模式里面,IOC是设计原则之一。在Spring,也被称为依赖注入,又名DI.
目前对于IOC理解基本上都是借助于Spring框架来理解,其实这种情况缘由IOC在spring里面发
展成比较成熟了。
目前IOC主要应用:
接口注射(这种主要用于EJB)
setter方法注射
构造方法注射
在这前ICO其实还有:
用普通的无模式来写Java程序
频繁的开始使用接口(工厂模式)
采用无模式写Java程序,根本是没有任何设计可言,程序扩展和灵活性很差。后面导致使用工厂模式去管理JavaBean,但是无论静态工厂还是动态工厂,他们的扩展都是要改动代码和重新编译的,实际上,这也很痛苦。
相对来说,反射机制在java的运用早有了,但是效率实在太低,而这时候恰好java反射机制的性能也得到很大的改善,性能比正常只慢了一倍,这时候性能不再成为问题,spring正好借助java反射机制来解决这些问题。
Spring IOC 主要采用XML+反射+工厂模式。
通过XML配置JavaBean之间的关系,借助工厂模式进行反射机制来构造对象,管理对象。
要了解IOC,必须要了解反射机制。因为反射机制在IOC最核心部分。
具体反射机制实现方式及在spring具体实现不再一一描述了。
如果你一个SSH使用者,在面试的时候能够将反射机制应用及在spring中具体实现说清楚,基本
上可以证明研究过Spring源码了。spring远不只这些内容,而这核心,不得不知道吧。
这时候随着应用更加深入,发现Spring还可以做多事情,比如AOP
AOP = 反 射+ 动态代理 +IOC
IOC:控制反转
在Java设计模式里面,IOC是设计原则之一。在Spring,也被称为依赖注入,又名DI.
目前对于IOC理解基本上都是借助于Spring框架来理解,其实这种情况缘由IOC在spring里面发
展成比较成熟了。
目前IOC主要应用:
接口注射(这种主要用于EJB)
setter方法注射
构造方法注射
在这前ICO其实还有:
用普通的无模式来写Java程序
频繁的开始使用接口(工厂模式)
采用无模式写Java程序,根本是没有任何设计可言,程序扩展和灵活性很差。后面导致使用工厂模式去管理JavaBean,但是无论静态工厂还是动态工厂,他们的扩展都是要改动代码和重新编译的,实际上,这也很痛苦。
相对来说,反射机制在java的运用早有了,但是效率实在太低,而这时候恰好java反射机制的性能也得到很大的改善,性能比正常只慢了一倍,这时候性能不再成为问题,spring正好借助java反射机制来解决这些问题。
Spring IOC 主要采用XML+反射+工厂模式。
通过XML配置JavaBean之间的关系,借助工厂模式进行反射机制来构造对象,管理对象。
要了解IOC,必须要了解反射机制。因为反射机制在IOC最核心部分。
具体反射机制实现方式及在spring具体实现不再一一描述了。
如果你一个SSH使用者,在面试的时候能够将反射机制应用及在spring中具体实现说清楚,基本
上可以证明研究过Spring源码了。spring远不只这些内容,而这核心,不得不知道吧。
这时候随着应用更加深入,发现Spring还可以做多事情,比如AOP
AOP = 反 射+ 动态代理 +IOC