当前位置: 首页 > news >正文

做个人网站的步骤广东省最新新闻

做个人网站的步骤,广东省最新新闻,微信公共平台开发,广州代办营业执照的正规公司交换机的类型 Fanout:广播,将消息交给所有绑定到交换机的队列。 Direct:订阅,基于RoutingKey(路由key)发送给订阅了消息的队列。 Topic:通配符订阅,与Direct类似,只不…

交换机的类型

Fanout:广播,将消息交给所有绑定到交换机的队列。

Direct:订阅,基于RoutingKey(路由key)发送给订阅了消息的队列。

Topic:通配符订阅,与Direct类似,只不过RoutingKey可以使用通配符(# (一个或多个单词)和 * (一个单词))。

Headers:头匹配,基于MQ的消息头匹配,用的较少。

准备

导入依赖:

        <!--AMQP依赖,包含RabbitMQ--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency><!--单元测试--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency>

配置文件:

spring:rabbitmq:host: ****** # 你的虚拟机/服务器IPport: 5672 # 端口virtual-host: **** # mq虚拟主机username: *** # 用户名password: *** # 密码

这里用direct类型的交换机举例:

基于配置类

步骤一:配置类中创建交换机和队列的Bean,并设置绑定关系,设置routingKey为sdg

import org.springframework.amqp.core.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class FanoutConfiguration {@Beanpublic DirectExchange directExchange() {return new DirectExchange("exchange01.direct");//或者return ExchangeBuilder.directExchange("exchange01.direct").build();}@Beanpublic Queue queue() {return new Queue("direct.queue01");}@Beanpublic Binding bind01(DirectExchange directExchange, Queue queue){return BindingBuilder.bind(queue).to(directExchange).with("sdg");}
}

步骤二:发送者发送消息

    @Testpublic void test5() {String exchange = "exchange01.direct";String message = "Hello World!";rabbitTemplate.convertAndSend(exchange,"sdg",message);}

 步骤三:消费者消费消息

package com.itheima.consumer.mq;import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;@Slf4j
@Component
public class SpringRabbitListener {@RabbitListener(queues = "direct.queue01")public void queue01Listener(String msg) {System.out.println("收到消息: "+msg);}
}

 direct模式由于要绑定多个KEY,每一个Key都要编写一个binding,会非常麻烦,基于配置类适用与简单的情况,所以我们就可以基于注解来声明交换机、队列和绑定关系

基于注解

消费者:

import org.springframework.amqp.core.ExchangeTypes;
import org.springframework.amqp.rabbit.annotation.Exchange;
import org.springframework.amqp.rabbit.annotation.Queue;
import org.springframework.amqp.rabbit.annotation.QueueBinding;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;@Component
public class SpringRabbitListener {@RabbitListener(bindings = @QueueBinding(value = @Queue(name = "direct.queue01"),exchange = @Exchange(name = "htsdg.direct",type = ExchangeTypes.DIRECT),key = {"sdg","ht"}))//默认类型为directpublic void queue01Listener(String msg) {System.out.println("收到消息: "+msg);}
}

再来一个topic类型的:

发送者:

    @Testpublic void test5() {String exchange = "htsdg.direct";String message = "Hello World!";rabbitTemplate.convertAndSend(exchange,"china.qianXueSen",message);}

消费者:

@RabbitListener(bindings = @QueueBinding(value = @Queue(name = "topic.queue1"),exchange = @Exchange(name = "htsdg.topic", type = ExchangeTypes.TOPIC),key = "china.#"
))
public void listenTopicQueue1(String msg){System.out.println("消费者1接收到topic.queue1的消息:【" + msg + "】");
}@RabbitListener(bindings = @QueueBinding(value = @Queue(name = "topic.queue2"),exchange = @Exchange(name = "htsdg.topic", type = ExchangeTypes.TOPIC),key = "#.news"
))
public void listenTopicQueue2(String msg){System.out.println("消费者2接收到topic.queue2的消息:【" + msg + "】");
}

http://www.hkea.cn/news/766415/

相关文章:

  • 海外如何 淘宝网站建设快速seo整站优化排行
  • 代还信用卡网站建设赣州seo顾问
  • 响应式网站建设推广开网店
  • 成都专业网站推广公司优化大师优化项目有
  • 怎么用wordpress搭建网站百度关键词排名点
  • 外挂网站模板域名搜索引擎入口
  • 手机网站开发 pdfseo搜索引擎优化工作内容
  • 上海中小网站建设洛阳seo博客
  • 南宁网站建设公司哪家专业搜索引擎优化包括
  • 新疆住房与建设厅网站新产品推广方式有哪些
  • 做网站站怎么赚钱网络营销模式有哪些?
  • 南通城市建设集团有限公司网站南京谷歌推广
  • 南通网站定制方案怎么查找关键词排名
  • 权大师的网站是哪个公司做的百度做个人简介多少钱
  • 烟台网站建设设计软文广告经典案例100字
  • 做微信用什么网站广州百度seo代理
  • 网站建设目标 优帮云跨境电商营销推广
  • 郑州华恩科技做网站怎么样竞价排名适合百度吗
  • flask做大型网站开发深圳seo博客
  • 合肥网站建设平台小程序怎么引流推广
  • 做网站被拘留免费找客源软件
  • 门户型网站建设百度seo快速提升排名
  • 印度做杂质的网站如何进行网络推广
  • 建设厅八大员兴安盟新百度县seo快速排名
  • 南京网站建设索q.479185700小说排行榜百度
  • 幼儿做爰网站seo工程师是什么职业
  • 申请空间 建立网站吗西安百度推广运营
  • 做花馍网站百度联盟
  • 沈阳建设企业网站google浏览器官网
  • 毕业论文 网站开发营销qq下载