gpt4 book ai didi

java - Spring ApplicationListener 没有接收到事件

转载 作者:IT老高 更新时间:2023-10-28 13:04:42 26 4
gpt4 key购买 nike

我有以下 ApplicationListener:

package org.mycompany.listeners;

import org.springframework.context.ApplicationListener;
import org.springframework.context.event.ContextStartedEvent;

public class MyApplicationListener implements ApplicationListener<ContextStartedEvent> {

public MyApplicationListener() {
super();
System.out.println("Application context listener is created!");
}

/**
* {@inheritDoc}
*/
public void onApplicationEvent(final ContextStartedEvent event) {
System.out.println("Context '" + event.getApplicationContext().getDisplayName() + "' is started!");
}

}

还有下面的bean定义:

<bean name="myApplicationListener" class="org.mycompany.listeners.MyApplicationListener" />

我可以看到 bean 是在打印来自构造函数的消息时创建的,但从未收到上下文启动事件。我错过了什么?

最佳答案

当您在上下文上显式调用 ConfigurableApplicationContext.start() 时,将发布

ContextStartedEvent。如果您需要在初始化上下文时发布的事件,请使用 ContextRefreshedEvent

另请参阅:

关于java - Spring ApplicationListener 没有接收到事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5728376/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com