提到Spring,基本用过的都会说其有依赖注入和控制反转,以及面向切面编程的特点,下面这篇文章主要说一下依赖注入。
1.为什么要进行依赖注入?
之所以Spring中出现了依赖注入,是因为以前写代码会出现耦合度很高的代码组合,所以需要对其进行解耦。
耦合具有两面性:
(1)紧密耦合的代码难以测试和复用
(2)一定程度的耦合是必须的,完全没有耦合的代码什么都做不了
因为我们可以采用依赖注入来进行解耦,降低代码之间的耦合度。通过依赖注入,对象之间的依赖关系将会由系统中负责协调各个对象的第三方组件在创建对象的时候进行设定。对象不需要自己创建或者管理其依赖关系。
2.如何进行依赖注入?换句话说就是依赖注入的方式有什么?
在Spring中存在3种依赖注入的方式,他们分别是:setter注入,构造器注入和接口注入,其中接口注入在平时开发中用到的很少。
(1)构造器注入
形式1:XML配置
XML形式的构造器注入上面表示,存在两个类A和B,将类B当做类A的构造器参数注入到A当中去。
形式2:Java注解配置
可以使用@Configuration和@Bean注解来进行构造器的注入。
3.什么是控制反转?
原来我们创建对象是需要程序员手动创建的,但是Spring就可以减少程序员来手工创建,他可以通过使用getBean的方法,来获取对象,简而言之,就是把创建对象的权利交给了Spring,而不需要程序员自己手动创建对象。
网友评论