spring的原理 spring三种实现机制,每种具体说明实现的原理?
spring的原理
IOC有两种叫法:1.依赖注入 2.控制反转(Inversion of Control)
底层的原理是通过反射实现的,也就是对你的属行进行注入(setter方法赋值),使我成为你类里一部份,这样通过反射机制,我可以得到你这个类的所有信息。
"spring"三种实现机制,每种具体说明实现的原理?
IoC,直观地讲,就是容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控制反转”的概念所在。IoC还有另外一个名字——“依赖注入(Dependency Injection)”
IoC的3种依赖注入类型如下
第1种是通过接口注射,这种方式要求我们的类必须实现容器给定的一个接口,然后容器会利用这个接口给我们这个类注射它所依赖的类。
第2种是通过setter方法注射,这种方式也是Spring推荐的方式。
第3种是通过构造方法注射类,这种方式Spring同样给予了实现,它和通过setter方式一样,都在类里无任何侵入性,但是,不是没有侵入性,只是把侵入性转移了,显然第1种方式要求实现特定的接口,侵入性非常强,不方便以后移植。