我应该何时使用getApplicationContext().getBean(<someclass>,args)
?
以上陈述是否与SomeClass obj = new SomeClass();
相似
如果是这样,getBean的用例是什么?
我无法理解为什么有必要从应用程序上下文中调用getBean。我是Sprin-boot应用程序的新手。 有人可以解释一下吗?
答案 0 :(得分:0)
通常,您应该尽可能避免此类调用,因为它会将您的业务代码耦合到spring-core
。您应该在应用程序上下文中注册组件(bean)(使用java-config,xml,component-scan等),并使用@Autowired
或@Inject
来询问所需的依赖项。
以上语句是否类似于SomeClass obj = new SomeClass();
嗯,不是真的。您可以按类查找bean,但您也可以通过接口进行查找。
除此之外,您还没有考虑bean的范围。有些bean可能是 singletons ,其中一些可能是 prototype ,其中一些甚至可能有一个自定义范围限制在月球的当前阶段。
主要想法的一个很好的解释可能是found。