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);
    }

}

测试方式同上:

posted @ 2020-11-04 19:07  BNTang  阅读(327)  评论(0编辑  收藏  举报