一.创建生产者环境
1.在pom.xml导入RabbitMQ依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>
2.创建配置文件
@Configuration public class RabbitMqConfig { /** * 创建交换机 * name:交换机名 * durable:持久化 * autoDelete:自动删除 * @return top */ @Bean public TopicExchange getTopicExchange(){ return new TopicExchange("exchangeTest",true,false); } /** * 创建队列 * name:队列名 * durable:持久化 * exclusive * autoDelete:自动删除 * arguments * @return queue */ @Bean public Queue getQueue(){ return new Queue("queuetest",true,false,false,null); } /** * 绑定队列交换机 * @param topicExchange 交换机 * @param queue 队列 * routingKey:路由文 */ @Bean public Binding getBinding(TopicExchange topicExchange,Queue queue){ return BindingBuilder.bind(queue).to(topicExchange).with("*"); } }
3.RabbitMQ生产者接口
@Api(tags = "RabbitMQ生产者接口") @RestController @RequestMapping("/RabbitMQ") public class TestCollection { @Autowired private RabbitTemplate rabbitTemplate; @RequestMapping("/rabbitmq/sendWork") public String sendWork() { rabbitTemplate.convertAndSend("exchangeTest","sa.dw.fdfd.ee","奥里给"); return "生产者已发送"; } }
二.创建消费者环境
1.导入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>
2.创建消费者接口
@Component public class TestCollection { @RabbitListener(queues = "queuetest")//队列名 public void testString(String msg){ System.out.println(msg); } }
//先启动生产者环境,让服务器创建交换机,这样在启动消费者项目才会获取到交换机队列
//最好不要把生产者,消费者放在同一个项目里