SpringBoot-RabbitMQ直连模式
生产者
生产者配置类 ProducerConfig
/**
* @author BNTang
*/
@Configuration
public class ProducerConfig {
@Bean
public Queue queue() {
// 这里面可以和之前的Hello项目一样,进行5个参数的配置
return new Queue("hello");
}
}
生产者发送消费
@SpringBootTest
class RabbitmqSpringbootProducerApplicationTests {
@Autowired
private RabbitTemplate rabbitTemplate;
@Test
void testDirectlyConnected() {
this.rabbitTemplate.convertAndSend("hello", "hello world");
System.out.println("消息发送成功");
}
}
消费者
消费者接收消息有两种方式都可以进行接收
方式 1
/**
* @author BNTang
*/
@Component
@RabbitListener(queuesToDeclare = {@Queue("hello")})
public class HelloConsumer {
@RabbitHandler
public void receive1(String message) {
System.out.println("接收到消息:" + message);
}
}
测试方式如下图所示:
方式 2
/**
* @author BNTang
*/
@Component
public class HelloConsumer {
@RabbitListener(queuesToDeclare = {@Queue("hello")})
public void receive2(String message) {
System.out.println("接收到消息" + message);
}
}
测试方式同上: