Spring 容器通过首先创建 DAG 来创建,然后在创建任何依赖于 other的之前Beans
实例化非依赖项。这很好并且可以理解。任何依赖于常规 java / pojo 的东西都可以由 JVM 类加载器机制提供,这也很好。beans
beans
beans
beans
objects
但是任何依赖于 bean 的 java 对象都是让我更深入地理解这种交错机制的原因。
- 在简单的情况下 - JVM 可以等待 spring 容器完成其 bean 创建过程,然后 JVM 可以创建它必须创建的任何 java obj。
和
- 对于交错的 bean 和 java obj:它们(jvm 和 spring 容器)都将根据需要以交错的方式创建 bean 和 java obj。我想到这一点是因为,当一个 bean 可以有一个对常规 java obj 的引用时,一个 java obj 可以有一个 bean 作为依赖项。
所以,澄清一下——Spring Container 和 JVM 是否以交错的方式创建 bean 和 obj。
(这是一个了解 Spring Container 与 JVM 一起工作的问题,这不能特定于类、seceniro 或用例,所以请不要将此问题标记为缺乏细节或用例或其他东西 - - 感谢您的理解。)
编辑以下@BoristheSpider 评论:
采取一些spring bean
. Spring 容器将尝试创建这个bean
。现在,比如说,这bean
取决于一个pojo
. 那么现在,这是如何pojo
创建的。它是由 Spring Container 直接创建还是通过将其委托给相应的 JVM 类加载器(引导程序或 ext 或应用程序)创建的。我认为它将委托给相应的 JVM 类加载器。有人可以澄清这一点。
NEXT - 当 JVM 必须创建一个pojo
取决于它bean
如何知道 bean 时。所以 JVM 和 Spring Container 必须关心一个和另一个。他们如何携手合作是我想要理解的。