springboot 使用rabbitmq
时间: 2023-08-29 08:14:14 浏览: 106
要在Spring Boot中使用RabbitMQ,首先需要添加相应的依赖。在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
```
接下来,你需要在application.properties(或application.yml)文件中配置RabbitMQ连接信息,例如:
```properties
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
```
然后,你可以创建一个生产者和一个消费者来发送和接收消息。
对于生产者,你可以使用RabbitTemplate类发送消息。例如,创建一个名为`MessageProducer`的类,并注入`RabbitTemplate`:
```java
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class MessageProducer {
private final RabbitTemplate rabbitTemplate;
@Autowired
public MessageProducer(RabbitTemplate rabbitTemplate) {
this.rabbitTemplate = rabbitTemplate;
}
public void sendMessage(String message) {
rabbitTemplate.convertAndSend("myExchange", "myRoutingKey", message);
}
}
```
对于消费者,你可以创建一个消息处理器来处理接收到的消息。例如,创建一个名为`MessageConsumer`的类,并使用`@RabbitListener`注解指定监听的队列:
```java
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
@Component
public class MessageConsumer {
@RabbitListener(queues = "myQueue")
public void handleMessage(String message) {
System.out.println("Received message: " + message);
// 处理消息
}
}
```
需要注意的是,你还需要在启动类上添加`@EnableRabbit`注解来启用RabbitMQ相关功能。
这是一个简单的使用RabbitMQ的Spring Boot示例。根据你的需求,你可以进一步配置交换机和队列等属性,以及处理更复杂的消息场景。
阅读全文