依赖注入听起来很复杂。但是目前已经成为一个设计模式理念。在项目中使用DI的模式之后你会发现代码变得异常简单并且容易理解和测试。
DI的实现:任何一个有意义的应用都会由两个或者更多的类组成,这些类相互之间进行写作来完成特定的业务逻辑。传统的做法是:每个对象负责管理与自己相互写作的对象的引用。DI的做法是:对象的依赖关系由系统中负责协调个对象的第三方组件在创建对象的时候进行设定。对象无需自行创建或者管理他们的依赖关系。依赖关系将被自动注入到需要他们的对象中。
DI带来的最大收益就是——松耦合。如果一个对象只通过接口来表明依赖关系,这种依赖就能够在对象本身毫不知情的情况下,用不同的具体实现进行替换。
对依赖进行替换的最常用方法就是在测试的时候是用mock来实现。
创建应用组件之间的写作的行为通常我们成为装配(wiring)。Spring有多种装配bean的方式。可以使用XML来进行装配。如果XML的配置不符合你的喜好,Spring还可以是用Java来描述配置文件。只要在Java代码中打上@Configuration 和@Bean的标签即可。
不管是使用基于XML的配置还是基于Java的配置,DI带来的收益都是一样的。
Spring通过应用上下文(Application Context)装载bean的定义并把它们组装起来。Spring应用上下文全权负责对象的创建和组装。Spring自带了多种应用上下文的实现,它们之间主要的区别仅仅是还在于如何加载配置。
需要更多教程,微信扫码即可
👆👆👆
别忘了扫码领资料哦【高清Java学习路线图】
和【全套学习视频及配套资料】