SpringBoot集成RabbitMQ

来源:互联网 发布:系统服务 软件更新 编辑:程序博客网 时间:2024/04/30 05:39

1. pom.xml添加依赖

<dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-amqp</artifactId></dependency>


2. application.properties配置

spring.rabbitmq.host=localhostspring.rabbitmq.port=5672spring.rabbitmq.username=guestspring.rabbitmq.password=guest


3. RabbitConfig队列配置

@Configurationpublic class RabbitConfig {    @Bean    public Queue helloQueue() {        return new Queue("hello");    }}


4. HelloSender发送者

@Componentpublic class HelloSender {    private static Logger logger = Logger.getLogger(HelloSender.class);    @Autowired    private AmqpTemplate rabbitTemplate;    public void send(String message) {        rabbitTemplate.convertAndSend("hello", message);        logger.info(String.format("send message: %s", message));    }}



5. HelloReceiver接收者

@Component@RabbitListener(queues = "hello")public class HelloReceiver {    private static Logger logger = Logger.getLogger(HelloReceiver.class);    @RabbitHandler    public void process(String message) {        logger.info(String.format("receive message: %s", message));    }}


6. HelloTest测试

@RunWith(SpringRunner.class)@SpringBootTestpublic class HelloTest {    @Autowired    private HelloSender helloSender;    @Test    public void test() {        helloSender.send("hello world");    }}


7. 测试结果

send message: hello worldreceive message: hello world