JMS 侦听器如何检查容器是否关闭

目前我的任务是在消息队列连接失败 5 次时停止我的 Spring Boot 应用程序。我发现了

DefaultJmsListenerContainerFactory.setBackOff()

这将在 5 次尝试失败后成功停止容器,但是当我使用时

@JmsListener(containerFactory="myFactory")

我没有明确地创建容器,而 spring 正在为我做这件事。那么如何检查容器是否关闭以关闭 spring boot 应用程序?

jjyyqa 回答:JMS 侦听器如何检查容器是否关闭

import javax.jms.ConnectionFactory;
import org.springframework.jms.config.DefaultJmsListenerContainerFactory;

    @Autowired
    private ConnectionFactory connectionFactory;

    @Bean("myFactory")
    public DefaultJmsListenerContainerFactory myCustomisedListenerFactory() {
        DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
        factory.setConnectionFactory(connectionFactory);
        // interval,max number of attempts
        factory.setBackOff(new FixedBackOff(1000,5));
        return factory;
    }

本文链接:https://www.f2er.com/1137658.html

大家都在问