依赖注入(DI)快速入门

小灰灰 2020-05-08 06:13 954阅读 0赞

DI:Dependency Injection 依赖注入,在Spring框架负责创建Bean对象时,动态的将依赖对象注入到Bean组件。

1、修改上一节的HelloServiceImpl

  1. public class HelloServiceImpl implements HelloService {
  2. private String info;//没有初始化,spring会自动将配置的属性值赋给这个变量
  3. public void setInfo(String info) {
  4. this.info = info;
  5. }
  6. public void sayHello(){
  7. System.out.println("hello,spring:"+info);
  8. }
  9. }

2、修改applicationContext.xml

  1. ...
  2. <bean id="helloService"
  3. class="com.dandelioncloud.spring.HelloServiceImpl">
  4. <property name="info" value="Dependency Injection"></property>
  5. </bean>
  6. ...

3、再次运行HelloServiceTest

控制台输出:

hello,spring:Dependency Injection

可以发现,这种利用spring注入属性值,不需要修改源代码。

而在传统写法中,由于实现类发生了向上转型,不能直接调用setInfo方法,因此如果要实现同样的效果,必须修改源代码—即spring修改了实现类,不需要修改其他地方的代码,只需修改配置文件;而传统方式中,修改了实现类之后,必须还要修改其他源代码。

发表评论

表情:
评论列表 (有 0 条评论,954人围观)

还没有评论,来说两句吧...

相关阅读

    相关 DI依赖注入

    在DI(依赖注入)中,能注入的数据是有三种类型的: 1、基本类型和String 2、其他bean类型(在配置文件中或者注解配置过的bean对象) 3、复杂类型/集

    相关 Spring---DI依赖注入

    上一篇介绍了关于IOC的内容:IOC称为控制反转,简单来说就是讲对象的创建的权利以及对象的生命周期的管理过程交给Spring容器来管理,从此在开发的过程中不需要关注对象的创建以

    相关 Spring依赖注入DI

    开头语:本文是我整理网上各种资料后整合而成的一篇文章。文中涉及到了代码重构、面向接口编程、持久化和工厂设计模式的内容。 1. Spring是什么?

    相关 依赖注入2-DI

    IoC主要体现了这样一种设计思想:通过将一组通用流程的控制从应用转移到框架之中以实现对流程的复用,同时采用“好莱坞原则”是应用程序以被动的方式实现对流程的定制。我们可以采用若干