java - 错过 Spring 的 Activity

标签 java spring

我正在使用 Spring 应用程序事件将信息发送到其他 bean。有一个 bean A,一旦 A 初始化,它就会发布一个事件。并且有一个 bean B 监听 A 发送的事件。

根据 A 在其他 Bean 中初始化的时间,B 初始化得很晚,并且错过了 A 发送的事件。

Spring 是如何避免此类问题的?除了改变bean初始化顺序还有其他方法吗?

最佳答案

一种可能的方法是使用

depends-on

属性。如果您使用的是属性,您可以定义依赖项

XML配置:

<bean id="A" depends-on="B"/>

基于注释:

@DependsOn("B")
public class A {}

这会强制 spring 在 A 之前初始化 B,这样它就不会错过 A 发布的事件。

关于java - 错过 Spring 的 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40997130/

相关文章:

java - 创建自定义 Android 通知而不使用 RemoteView

java - 使用 spring boot 应用程序属性设置 tomcat 属性

spring - 使用 Spring 数据休息发布嵌套对象?

java - 当我将 spring-boot war 部署到 tomcat 并启动 tomcat 时,我看到了这个错误消息

java - 如何使用 Spring Boot 创建 mongodb 通用 REST API?

java - 如何为 Java 6 枚举实现 values()?

java - 反向传播算法编程

java - 在 mongo 中将 POJO 对象转换为 DBObject

java - 在同一 JVM 中的 Spring 应用程序之间进行通信的最佳方式

java - 获取所有项目的映射方法返回一个空列表