交换机的使用

交换机的使用
   rabbitmq02                     #主模块
     rabbitmq-provider            #生产者
     rabbitmq-consumer            #消费者

   0.给子模块添加依赖
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-amqp</artifactId>
     </dependency>
     <dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
     </dependency>
     <dependency>
       <groupId>org.projectlombok</groupId>
       <artifactId>lombok</artifactId>
       <optional>true</optional>
     </dependency>

   1.直连交换机(Direct Exchange)
     1.RabbitmqDirectConfig
       关键代码:
       new Queue("directQueue", true);//true 是否持久
       new DirectExchange("directExchange");
       BindingBuilder.bind(directQueue()).to(directExchange()).with("directRouting");

     2.SendMessageController
         关键代码:rabbitTemplate.convertAndSend("directExchange", "directRouting", map);
                   sendDirectMessage:进行消息推送(也可以改为定时任务,具体看需求)
         
     3.查看rabbitmq管理界面
       我们目前还创建消费者rabbitmq-consumer,消息没有被消费的,我们去rabbitMq管理页面看看,是否推送成功 
       Overview选项卡,可以查看到刚刚创建的消息
     4.创建消息接收监听类DirectReceiver
     

     注1:新版jdk日期及格式化
          LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));

     注2:rabbitTemplate和amqpTemplate有什么关系
          查看源码中会发现rabbitTemplate实现自amqpTemplate接口,两者使用起来并无区别,功能一致

     注3:不要@Configuration写成了@Configurable,这两个长得很像
          @Configuration该注解是可以用来替代XML文件。
          手动new出来的对象,正常情况下,Spring是无法依赖注入的,这个时候可以使用@Configurable注解

   2.主题交换机(Topic Exchange)
     RabbitTopicConfig

     //绑定键
    public final static String people = "people.*";
    public final static String man = "people.man";
    public final static String woman = "people.woman";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值