Spring Cloud——RabbitMQ消息中间件

Spring Cloud——RabbitMQ消息中间件

(本文只作为学习记录)
  • 官网下载安装RabbitMQ,启动服务,浏览器输入localhost:15672进入管理界面,账号密码默认都是guest

  • 新建Spring Boot项目,pom.xml 添加 spring-boot-starter-web 和 spring-boot-starter-amqp依赖

(parent节点中的版本建议小于2.0.0.RELEASE,本文使用1.5.9.RELEASE)
  • application.properties配置属性:
spring.application.name=rabbitmq

spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest

server.port=9007
  • 创建消息生产者
@Component
public class Sender {
    @Autowired
    private AmqpTemplate rabbitTemplate;

    public void send(String name) {
        String context = "hello " + name + ", Time is " +  new Date();
        System.out.println("Sender: " + context);
        rabbitTemplate.convertAndSend("SpringCloudDemoQueue", context);
    }
}
  • 创建消息消费者
@Component
@RabbitListener(queues = "SpringCloudDemoQueue")
public class Receiver {
    @RabbitHandler
    public void process(String context) {
        System.out.println("Receiver: " + context);
    }
}
  • 创建配置类
@Configuration
public class RabbitConfig {

    @Bean
    public Queue SpringCloudDemoQueue() {
        return new Queue("SpringCloudDemoQueue");
    }
}
  • 创建对外接口
@RestController
public class RabbitMQSenderController {
    @Autowired
    private Sender sender;

    @GetMapping(value = "/rabbitmq/send")
    public String send(@RequestParam String name) {
        sender.send(name);
        return "success";
    }
}
  • 打开浏览器,输入 http://localhost:9007/rabbitmq/send?name=name即可看到控制台输出的相应消息

源代码请参考 RabbitMQ

猜你喜欢

转载自blog.csdn.net/m0_37770300/article/details/81284180