先建工程

下一步,输入坐标

下一步,输入工程名

先看一下最终目录

修改pom文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.example.demo</groupId><artifactId>rebbitmq-hello</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>com.rabbitmq</groupId><artifactId>amqp-client</artifactId><version>5.1.2</version></dependency><!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.25</version></dependency><!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-simple --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-simple</artifactId><version>1.7.25</version></dependency></dependencies></project>

Send类:

package com.example.demo;import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;import java.io.IOException;
import java.util.concurrent.TimeoutException;public class Send {private static final String QUEUE_NAME = "hello";public static void main(String[] args) throws IOException, TimeoutException {ConnectionFactory factory = new ConnectionFactory();    // 连接工厂factory.setHost("localhost");Connection connection = factory.newConnection();        // 获取连接Channel channel = connection.createChannel();channel.queueDeclare(QUEUE_NAME, false, false, false, null);    // 声明队列,只有他不存在的时候创建String msg = "Hello World!";channel.basicPublish("", QUEUE_NAME, null, msg.getBytes());System.out.println("Sending:" + msg);channel.close();connection.close();}}

Receive类:

package com.example.demo;import com.rabbitmq.client.*;import java.io.IOException;
import java.util.concurrent.TimeoutException;public class Receive {private static final String QUEUE_NAME = "hello";public static void main(String[] args) throws IOException, TimeoutException {ConnectionFactory factory = new ConnectionFactory();    // 连接工厂factory.setHost("localhost");Connection connection = factory.newConnection();        // 获取连接Channel channel = connection.createChannel();channel.queueDeclare(QUEUE_NAME, false, false, false, null);    // 声明队列,只有他不存在的时候创建
Consumer consumer = new DefaultConsumer(channel){@Overridepublic void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body) throws IOException {String recv = new String(body, "UTF-8");System.out.println("Receive:" + recv);}};channel.basicConsume(QUEUE_NAME, true, consumer);}
}

先启动Send,查看控制台

兔子管控台

再启动Receive

兔子管控台:已经消费掉

转载于:https://www.cnblogs.com/LUA123/p/8471715.html

RabbitMQ入门-队列相关推荐

  1. RabbitMQ入门教程(安装,管理插件,Publisher/Consumer/交换机/路由/队列/绑定关系,及如何保证100%投递等)

    RabbitMQ入门教程(安装,管理插件,Publisher/Consumer/交换机/路由/队列/绑定关系,及如何保证100%投递等) 1. RabbitMQ简介及AMQP协议 开源的消息代理和队列 ...

  2. RabbitMQ 入门系列(2)— 生产者、消费者、信道、代理、队列、交换器、路由键、绑定、交换器

    本系列是「RabbitMQ实战:高效部署分布式消息队列」和 「RabbitMQ实战指南」书籍的读书笔记. RabbitMQ 中重要概念 1. 生产者 生产者(producer)创建消息,然后发送到代理 ...

  3. RabbitMQ 延迟队列-对于入门来说可以快速上手

    RabbitMQ 延迟队列-非常非常实用 RabbitMQ 延迟队列-非常非常实用 一.使用场景 二.消息延迟推送的实现 三.项目具体实现 RabbitMQ 延迟队列-非常非常实用 一.使用场景 ​ ...

  4. RabbitMQ 入门系列(10)— RabbitMQ 消息持久化、不丢失消息

    消息要保持"持久化",即不丢失,必须要使得消息.交换器.队列,必须全部 "持久化". 1. 生产者怎么确认 RabbitMQ 已经收到了消息? # 打开通道的确 ...

  5. rabbitMQ入门程序

    1.生产者 /*** rabbitMQ入门程序消费者** @author xiaoss* @date 2020年10月27日 22:02*/ public class Producer01 {//队列 ...

  6. rabbitmq 入门demo

    rabbitmq 入门demo http://www.cnblogs.com/jimmy-muyuan/p/5428715.html http://www.cnblogs.com/shanyou/p/ ...

  7. RabbitMQ 入门:2. Exchange 和 Queue

    上文RabbitMQ 入门:1. Message Broker(消息代理)提到过 RabbitMQ 实现了 AMQP 这个协议(RabbitMQ 所支持的 AMQP 的版本是 0.9.1),这个协议的 ...

  8. rabbitmq 延迟队列_Delayed Message 插件实现 RabbitMQ 延迟队列

    延迟队列是为了存放那些延迟执行的消息,待消息过期之后消费端从队列里拿出来执行. DLX + TTL 方式存在的时序问题 对于延迟队列不管是 AMQP 协议或者 RabbitMQ 本身是不支持的,之前有 ...

  9. RabbitMQ入门学习系列(二),单生产者消费者

    友情提示 我对我的文章负责,发现好多网上的文章 没有实践,都发出来的,让人走很多弯路,如果你在我的文章中遇到无法实现,或者无法走通的问题.可以直接在公众号<爱码农爱生活 >留言.必定会再次 ...

最新文章

  1. Android 机型适配之gradient默认渐变方向
  2. tensorflow 利用索引获取tensor特定元素
  3. iPhone开发之BASE64加密和解密
  4. mysql 表锁——读锁和写锁
  5. ORACLE 11G负载均衡测试
  6. idea调整代码字体大小方法
  7. 部署ASDM图形化工具
  8. 淘宝/天猫直通车基本概念
  9. windows下 apache配置rewrite错误解决
  10. halcon例程学习笔记(10)---图像灰度共生矩阵cooc_feature_image.hdev
  11. 尚硅谷kylin单机版之安装kylin
  12. PHP 屏幕亮度,window_Win8系统 调节电脑屏幕亮度的四种方法,第一页:Win8系统下调节电脑屏 - phpStudy...
  13. 万字长文!Unix 和 Linux 你不知道的那些历史(详解版)
  14. 侍魂服务器维护补偿,侍魂胧月传说:套路!花了15万元玩强化类氪金游戏总结出来的经验...
  15. 手机拨出等待时间长_手机打不出去电话怎么回事 一分钟轻松排查原因
  16. 华为虚拟机服务器怎么使用教程,虚拟机装服务器教程
  17. 图形学基础 | mtl文件详解
  18. pip换源-pip国内源
  19. hbase应用场景 java_Hbase Java API 使用
  20. 机器学习----线性回归

热门文章

  1. python特征选择工具_一个Python特征选择工具,助力实现高效机器学习
  2. C语言程序设计--输入与输出
  3. java-接口与多态-
  4. 使用CloudFlare 的 PKI 工具集 cfssl 来生成 Certificate Authority (CA) 证书和秘钥文件
  5. 转:Excel导出问题(导出时不去掉前面的0)
  6. c#实例-子线程查找另一线程模态对话框句柄(invoke测试)
  7. java获取实体类的属性和值
  8. 编译器构造概述(详细)
  9. uni-app-微信小程序实现输入卡号 每四个为一组中间为空格(也可以取消空格)
  10. android 渠道号_亲测:安卓打渠道包神器,1分钟出自动出100个渠道包