我编写了示例 spring amqp 生产者,它在 RabbitMQ 服务器上运行,该服务器发送消息并使用 Spring AMQP 使用 MessageListener 使用这些消息。在这里,我想将队列和消息持久性设置为 false。您能否请任何人帮助我了解如何使用注释将“持久”标志设置为 false。
这是示例代码
@Configuration
public class ProducerConfiguration {
protected final String queueName = "hello.queue";
@Bean
public RabbitTemplate rabbitTemplate() {
RabbitTemplate template = new RabbitTemplate(connectionFactory());
template.setRoutingKey(this.queueName);
template.setQueue(this.queueName);
return template;
}
@Bean
public ConnectionFactory connectionFactory() {
CachingConnectionFactory connectionFactory = new CachingConnectionFactory("localhost");
connectionFactory.setUsername("guest");
connectionFactory.setPassword("guest");
return connectionFactory;
}
}
public class Producer {
public static void main(String[] args) throws Exception {
new Producer().send();
}
public void send() {
ApplicationContext context = new AnnotationConfigApplicationContext(
ProducerConfiguration.class);
RabbitTemplate rabbitTemplate = context.getBean(RabbitTemplate.class);
for (int i = 1; i <= 10; i++) {
rabbitTemplate.convertAndSend(i);
}
}
}
提前致谢。