java - Spring中调用ApplicationContext.getBean()是否使用依赖注入(inject)?

标签 java spring

由于依赖注入(inject)意味着控制反转,因此我在以下调用中看不到 IOC:

  Car car = (Car)ApplicationContext.getBean("car");

这不是 Spring 自己设计的类,因为我自己将 Car 写入了代码中。

此外,所有书籍都讨论两种 DI:setter 和构造函数 DI。

所以我想知道调用 ApplicationContext.getBean() 是否意味着任何类型的依赖注入(inject)和 IOC,或者根本没有 DI。

最佳答案

没有。以这种方式获取 bean 并不是依赖注入(inject)。它没有被注入(inject)。不过,该 bean 的字段可能已被注入(inject)。

有时确实没有办法解决这个问题,但一般来说,尽量避免这种情况。

关于java - Spring中调用ApplicationContext.getBean()是否使用依赖注入(inject)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14829295/

相关文章:

java - 在java中从控制台读取一个整数

java - Swing/AWT 中拟议项目的 GridBagLayout 或 BorderLayout?

找不到 javax.ws.rs.core.HttpHeaders.CONTENT_DISPOSITION

java - 应用程序请求为空后使用 Autowired 获取实例

java - mvn 测试失败,但从 IntelliJ IDEA 运行测试通过

java - Apache FileUtils.copyDirectory(...) 的进度条

java - Apache Ignite Queue 比 LinkedBlockingQueue 慢得多

java - 如何用数据库数据java和hibernate填充组合框

java - Spring 3.0 将文件作为资源注入(inject)

java - Thymeleaf if + 每个订单