【问题标题】:What is Dependency Injection with a real world example? [duplicate]什么是真实世界示例的依赖注入? [复制]
【发布时间】:2014-07-20 08:07:12
【问题描述】:

我是春季初学者 我想知道一些真实世界的依赖注入示例。 使用它的真实情况是什么。 请帮我举一些现实世界的例子。

【问题讨论】:

  • 我认为 OP 的意思是他想阅读 world 示例,而不是与其他问题(实际用例)中的软件相关。我有一个答案,但我不能在这里回答,因为它被标记为重复。你能打开这个问题吗?谢谢。

标签: spring dependency-injection ioc-container


【解决方案1】:

让我以非技术形式告诉你一个真实世界的例子,

假设你经常给我 1 升水, 您为此使用 10 杯 100 毫升。

所以每次你来10杯!....

现在,假设你有一壶 1 升... 你会怎么做?

您每次都会使用它,因为它具有轻松完成工作的功能...简单...

在技术上, 1ltr jug 是你的依赖注入,它会让你的工作更轻松......

在实际应用程序中,如果您想创建与数据库的连接,您只需使用所需的功能(如数据库、密码、用户名...)为其创建 bean。 并在任何地方使用它们....只需执行@Autowired....

DI 只是减少您的 LOC(代码行)。

Dani 的例子也很好很简单。

【讨论】:

  • 请投反对票并解释,以便帮助他人。
【解决方案2】:

想象一下

正常行为:

public class MyBeanLoaded{...}

public class MyNewBean{

    private MyBeanLoaded myBeanLoaded;

    public MyNewBean(MyBeanLoaded myBeanLoaded){

         this.myBeanLoaded = myBeanLoaded;
    }

}

使用 DI 近似:

public class MyBeanLoaded{...}

public class MyNewBean{

    @Autowired
    private MyBeanLoaded myBeanLoaded;

}

从这里,您可以想象所有可以做的事情,以及可以避免多少行代码来编写一个更可操作的应用程序。

【讨论】:

  • 你能举一些现实生活(现实世界)的例子来使用这个概念吗?
  • 不是一个现实世界的概念,因为这不是一个 bean 或 bd 模型层,是一种“动态”加载对象依赖项(如控制器、服务等)的开发概念......当您认为在实现您的现实世界问题的应用模型中,您将能够了解使用 DI 的所有情况。
  • 这不是一个真实的例子
猜你喜欢
  • 2019-10-12
  • 2014-09-10
  • 1970-01-01
  • 2018-08-24
  • 2011-06-08
  • 2010-11-23
  • 2010-10-14
相关资源
最近更新 更多