此版本仍在开发中,尚不被认为是稳定的。对于最新的稳定版本,请使用 Spring AMQP 3.2.6spring-doc.cadn.net.cn

编程端点注册

RabbitListenerEndpoint提供 Rabbit 端点的模型,并负责为该模型配置容器。 该基础结构允许您以编程方式配置端点,以及由RabbitListener注解。 以下示例显示了如何执行此作:spring-doc.cadn.net.cn

@Configuration
@EnableRabbit
public class AppConfig implements RabbitListenerConfigurer {

    @Override
    public void configureRabbitListeners(RabbitListenerEndpointRegistrar registrar) {
        SimpleRabbitListenerEndpoint endpoint = new SimpleRabbitListenerEndpoint();
		endpoint.setId("someRabbitListenerEndpoint");
        endpoint.setQueueNames("anotherQueue");
        endpoint.setMessageListener(message -> {
            // processing
        });
        registrar.registerEndpoint(endpoint);
    }
}

在前面的示例中,我们使用SimpleRabbitListenerEndpoint,它提供了实际的MessageListener调用,但您也可以构建自己的端点变体来描述自定义调用机制。spring-doc.cadn.net.cn

id属性是必需的SimpleRabbitListenerEndpoint定义。

应该注意的是,您也可以跳过使用@RabbitListener并通过编程方式注册您的端点RabbitListenerConfigurer.spring-doc.cadn.net.cn