引入依赖


引入依赖之后,配置文件写完,spring 就帮我们注入了,RabbitTemplate

spring: application: name: rabbitmq_namerabbitmq:host: 主机地址port: 端口号username: 账号password: 密码virtual-hoat: 虚拟主机地址

RabbitTemplate 用来简化操作,使用时直接注入,在spring跟mq服务器建立配置文件之后会自动实例化,模板对象

队列模型 点对点

生产者

@springBootTest(classes = RabbitmqSpringbootApplication.class)
@RunWith(StringRunner.class) //spirng 工厂
public class Test{@Autowiredprivate RabbitTemplate rabbitTemplate;// 生产者不会自动创建队列@Testpublic void  test(){// rountingKye,ObjectrabbitTemplate.convertAndSend("hello","body消息");}
}

消费者

01:-------------


@Component// 加上这个注解,告诉spring它是一个消费者
// 参数 queuesToDeclare  表示监听哪个队列,如果没有,就创建/其他参数请看:01
@RabbitListener(queuesToDeclare = @Queue("hello"))
public class HelloCustomer{@RabbitHandlerpublic void n(String message){System,out.pring(mess)}
}

队列模型,1对多

二:

 生产者
@springBootTest(classes = RabbitmqSpringbootApplication.class)
@RunWith(StringRunner.class) //spirng 工厂
public class Test{@Autowiredprivate RabbitTemplate rabbitTemplate;// 生产者不会自动创建队列@Testpublic void  test(){// rountingKye,ObjectrabbitTemplate.convertAndSend("worl","worl消息");}
}

消费者

@Component
public class HelloCustomer{//不用rabbitHandler 可以直接用RabbitListener 监听 @RabbitListener(queuesToDeclare = @Queue("work"))public void n(String message){System,out.pring(mess)}// 监听同一个,轮询执行,平均分// 可以监听多个@RabbitListener(queuesToDeclare = @Queue("work"))public void n(String message){System,out.pring(mess)}
}

交换机模型 广播

 生产者
@springBootTest(classes = RabbitmqSpringbootApplication.class)
@RunWith(StringRunner.class) //spirng 工厂
public class Test{@Autowiredprivate RabbitTemplate rabbitTemplate;// 生产者不会自动创建队列@Testpublic void  test(){// 交换机 rountingKye,ObjectrabbitTemplate.convertAndSend("worl","","worl消息");}
}

消费者

@Component
public class HelloCustomer{//不用rabbitHandler 可以直接用RabbitListener 监听 @RabbitListener(bindings={@QueuBinding(//声明指定名称,不声明,创建临时队列@Queue("work") value = @Queue, //临时队列exchange=@Exchange(value = "work", type = "fanout") //绑定交换机)})public void test (String message){System,out.pring(mess)}
}

路由key

生产者

@springBootTest(classes = RabbitmqSpringbootApplication.class)
@RunWith(StringRunner.class) //spirng 工厂
public class Test{@Autowiredprivate RabbitTemplate rabbitTemplate;// 生产者不会自动创建队列@Testpublic void  test(){// 交换机 rountingKye,ObjectrabbitTemplate.convertAndSend("work","work01","worl消息");}
}

消费者

@Component
public class HelloCustomer{//不用rabbitHandler 可以直接用RabbitListener 监听 @RabbitListener(bindings={@QueuBinding(//声明指定名称,不声明,创建临时队列@Queue("work") value = @Queue, //临时队列exchange=@Exchange(value = "work", type = "direct") //自定义交换机名称和类型key    = {"info","work01"})})public void test (String message){System,out.pring(mess)}
}

动态路由。订阅模式

生产者

@springBootTest(classes = RabbitmqSpringbootApplication.class)
@RunWith(StringRunner.class) //spirng 工厂
public class Test{@Autowiredprivate RabbitTemplate rabbitTemplate;// 生产者不会自动创建队列@Testpublic void  test(){// 交换机 rountingKye,ObjectrabbitTemplate.convertAndSend("work","work.work","worl消息");}
}

消费者

@Component
public class HelloCustomer{//不用rabbitHandler 可以直接用RabbitListener 监听 @RabbitListener(bindings={@QueuBinding(//声明指定名称,不声明,创建临时队列@Queue("work") value = @Queue, //临时队列exchange=@Exchange(value = "work", type = "direct") //自定义交换机名称和类型key    = {"info","work01.*,work01.#"})})public void test (String message){System,out.pring(mess)}
}

String boot 整合rabbitMQ相关推荐

  1. spring boot整合RabbitMQ —— 十分钟急速上手

    安装运行rabbitmq 1.docker安装rabbitmq: docker run -it --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq ...

  2. Spring Boot 整合 RabbitMQ 实现

    Spring Boot 整合 RabbitMQ 实现 1. 开发环境搭建 1.1 pom配置 1.2 application.yml配置 2. 消费者模块(springboot-rabbitmq-co ...

  3. Spring Boot: Spring Boot 整合 RabbitMQ

    前言 RabbitMQ 是一个消息队列,说到消息队列,大家可能多多少少有听过,它主要的功能是用来实现应用服务的异步与解耦,同时也能起到削峰填谷.消息分发的作用. 消息队列在比较主要的一个作用是用来做应 ...

  4. rabbitmq fanout java_spring boot整合RabbitMQ实例详解(Fanout模式)

    1.Fanout Exchange介绍 Fanout Exchange 消息广播的模式,不管路由键或者是路由模式,会把消息发给绑定给它的全部队列,如果配置了routing_key会被忽略. 如上图所示 ...

  5. cSpring Boot整合RabbitMQ详细教程

    来自:https://blog.csdn.net/qq_38455201/article/details/80308771 十分详细,几张图片不显示,看这个地址 1.首先我们简单了解一下消息中间件的应 ...

  6. 【消息中间件】Spring Boot整合RabbitMQ

    简介 在Spring项目中,可以使用Spring-Rabbit去操作RabbitMQ 尤其是在spring boot项目中只需要引入对应的amqp启动器依赖即可,方便的使用RabbitTemplate ...

  7. Spring boot整合rabbitmq

    一.生产者 1.pom.xml <properties><maven.compiler.source>8</maven.compiler.source><ma ...

  8. rabbitmq fanout java_spring boot整合RabbitMQ(Fanout模式)

    1.Fanout Exchange介绍 Fanout Exchange 消息广播的模式,不管路由键或者是路由模式,会把消息发给绑定给它的全部队列,如果配置了routing_key会被忽略. 如上图所示 ...

  9. RabbitMQ使用及与spring boot整合

    1.MQ 消息队列(Message Queue,简称MQ)--应用程序和应用程序之间的通信方法 应用:不同进程Process/线程Thread之间通信 比较流行的中间件: ActiveMQ Rabbi ...

最新文章

  1. change事件判断ajax,jquery中change事件里面if语句失效
  2. Oracle数据库之多表查询
  3. (十一)深入浅出TCPIP之TCP粘包问题
  4. 牛人学习h264运动估计的方法
  5. 简单理解JSONP的定义及其实现
  6. C/C++多种方法获取文件大小(转)
  7. PHP笔记-PHP中Web Service.
  8. (重磅)最快的Hadoop完全分布式运行
  9. 《硬核干货》简单好用视频、图片、文件MD5值修改工具类
  10. 五大主流浏览器内核以及国内常见的几种浏览器内核总结
  11. 大数据可视化期末复习
  12. UG NX二次开发 - CAM 获取和设置公差的方法,含内外公差、边界内外公差的设置方法
  13. PS如何制作火焰效果图特效步骤教程
  14. 抖音实战~实现App端视频上传、发布、落库
  15. 18年华为没有一项原创的发明
  16. 最新WordPress二次元博客主题Sakurairo模板源码+多彩且实用
  17. 如何用手机打印文件?手机中存储的文档怎么打印
  18. foter 图像处理APP_摄影师必备的图像编辑APP
  19. R语言笔记⑧——数据挖掘算法
  20. 【C语言初学必看】猜数字游戏背后的知识

热门文章

  1. 电商运营有前途吗?看看运营者的血泪史
  2. [luogu p1536] 村村通
  3. 血球分析医用仪器专用直流高压输出宽电压输入模块电源:GRB系列血液分析仪|血球分析仪专用GRB系列模块电源,采用先进的DC-DC转换升压技术和独特的真空绝缘灌封工艺,外壳采用金属屏蔽,具有防潮防震、效
  4. 如何在React工程中使用JavaScript Barcode SDK创建Web条形码应用
  5. xlabel 用法 matlab,matlab关于使用m语言设计gui设置xlabel出错
  6. 【AD】各类端子型号名称
  7. [ CTF ] WriteUp-2022 College Security Competition Byte Capture The Flag(字节跳动安全范儿高校挑战赛)
  8. python的格式化输入_一看就懂的Python输入和输出、格式化字符串方法
  9. OrientDB Python连接操作
  10. html+css+js实现的新年烟花