Spring 集成和更改数据路由

Spring integration and changing data routes

我正在通读 Spring 集成文档,但我仍然无法理解一件事:Spring 是否解决所有依赖关系并在编译时或运行时进行自动 IoC 依赖注入?

我认为在从网关到某个数据端点(例如数据库)的数据路由中将可用组件连接在一起是运行时工作。但是由于大多数示例都是在 java 中使用 DSL 语法制作的,因此它似乎是一个编译时作业。

那么,只能在编译时将数据高速公路中的 bean 粘合在一起吗?

java DSL 语法只是定义流定义(一系列 bean 定义)的一种不同方式。在应用程序初始化(运行时)期间仍然会创建 bean 并将它们连接在一起。

在这里总结我的评论:

1) Spring IOC 容器管理 bean 从创建到销毁的整个过程。这意味着 bean 已经准备好放在一个桶中,这是一个随时可用的应用程序。因此,有必要在编译时而不是 运行 时创建桶的内容。这不包括 bean 的热交换。我希望这就是您要找的。

2) 您可以根据需要创建任意数量的路由,所有这些 bean 都将放入容器中....据我所知,您不能只更改源代码并将其与已经 运行宁一,你必须至少做一个优雅的重启。对此有一个底线,Spring 必须查看是否所有 bean 都正确自动装配,没有循环依赖,并且在 运行 期间不期望源代码。当然,您可以通过 RMI 获取 bean,但这不算是因为您已经声明了它。所以是的,编译时间是