1. 在 SpringBoot 项目中添加依赖
<!--添加支持mq的-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
2. 安装 一个 rabbitmq
3 在 SpringBoot 的配置文件里填写 rabbitmq 相关信息
spring.application.name=rabbitmq-demo
spring.rabbitmq.host=192.168.12.102
spring.rabbitmq.port=5672
spring.rabbitmq.username=admin
spring.rabbitmq.password=admin
4 配置 一个消息队列
import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class SenderConf {
/**
* 配置Queue(消息队列).那注意由于采用的是Direct模式,需要在配置Queue的时候,指定一个键,使其和交换机绑定.
* @return
*/
@Bean
public Queue queue() {
return new Queue("queue");
}
}
4 再弄一个很简单的消息发送的工具类
@Component
public class MQSendUtil {
@Autowired
private AmqpTemplate template;
/**
* 向 rabbitmq 中发送一个消息队列
*/
public void sendMsg(){
template.convertAndSend("queue","hello world");
}
}
5 再搞一个消息接收的工具类
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
@Component
public class MQReceiveUtil {
@RabbitListener(queues="queue") //监听器监听指定的Queue
public void processMs(String str) {
System.out.println("Received Msg:"+ str);
}
}
当你发送消息到 rabbitmq 的时候,就会接收到消息。
附录我的源代码:
https://gitee.com/coder_xiaozhao/rabbitmq-demo