在Spring Boot中集成消息队列通常使用Spring的Messaging模块和相关的库。常见的消息队列有RabbitMQ、Kafka、ActiveMQ等。
下面以集成RabbitMQ为例来介绍如何在Spring Boot中集成消息队列:
pom.xml
中添加RabbitMQ的依赖:<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
application.properties
或application.yml
中配置RabbitMQ的连接信息:spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
RabbitTemplate
发送消息到RabbitMQ。import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class MessageProducer {
@Autowired
private RabbitTemplate rabbitTemplate;
public void sendMessage(String message) {
rabbitTemplate.convertAndSend("exchangeName", "routingKey", message);
}
}
@RabbitListener
注解监听RabbitMQ消息队列。import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
@Component
public class MessageConsumer {
@RabbitListener(queues = "queueName")
public void handleMessage(String message) {
System.out.println("Received message: " + message);
}
}
sendMessage
方法,消息消费者会监听queueName
队列并处理接收到的消息。这样就完成了在Spring Boot中集成RabbitMQ消息队列。其他消息队列的集成方式类似,只需要替换对应的依赖和配置信息即可。