我是IoC和DI业务的新手 – 我觉得如果你传递的是全局范围的对象,我会得到这个概念,但是当你需要传递一个对象时,我不知道它是如何工作的一个特定的逻辑状态.因此,例如,如果我想将一个人对象注入一个写文件命令对象 – 我将如何动态选择正确的人对象?从我所看到的,我可以默认构造对象,但我的断开是你不会使用默认的人物对象,它需要是动态的.我假设IoC容器可能只是在它被传递时为你维护对象的状态,但是那时你认为你只处理一个人对象,因为没有线程安全,对吧?我知道我错过了一些东西,(可能是类似工厂类的东西),但我需要更多关于它如何工作的信息.
好吧,你总是可以向你的消费者注入一个
Abstract Factory并使用它来创建本地范围的对象.
原文链接:https://www.f2er.com/javaschema/281343.html这有时是必要的.看这些例子:
> MVC,DI (dependency injection) and creating Model instance from Controller
> Is there a pattern for initializing objects created via a DI container
> Can’t combine Factory / DI
但是,一般来说,我们倾向于不将DI用于实体,而主要用于服务.相反,实体通常是通过某种存储库创建的.