栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

RabbitMQ:简单队列

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

RabbitMQ:简单队列

简单队列

1.创建Maven项目2.导入rabbitmq依赖3.简单队列-生产者Send4.简单队列-消费者Recv运行结果

运行生产者Send运行消费者Recv


说明:

P 是生产者C 是消费者红色方块 队列 1.创建Maven项目

项目目录

2.导入rabbitmq依赖

  com.rabbitmq
  amqp-client
  5.7.3

3.简单队列-生产者Send
public class Send {
    // 定义队列名称
    private final static String QUEUE_NAME = "hello";

    public static void main(String[] argv) throws Exception {
        // 创建连接工厂
        ConnectionFactory factory = new ConnectionFactory();
        // 连接工厂配置
        factory.setHost("192.168.68.152");
        factory.setPort(5672);
        factory.setUsername("lwx");
        factory.setPassword("lwx");
        factory.setVirtualHost("/lwx");
        // 创建连接
        try(Connection connection = factory.newConnection();    //Connection间接继承了AutoCloseable接口,可以不用手动关闭连接
            // 创建信道
            Channel channel = connection.createChannel()) {
            
            channel.queueDeclare(QUEUE_NAME,false,false,false,null);
            String message = "Hello World!";
            // 发送消息
            channel.basicPublish("",QUEUE_NAME,null,message.getBytes(StandardCharsets.UTF_8));
            System.out.println("[x]Sent'" + message + "'");
        }
    }
}
4.简单队列-消费者Recv
public class Recv {
    // 定义队列名称
    private final static String QUEUE_NAME = "hello";

    public static void main(String[] argv) throws Exception {
        // 创建连接工厂
        ConnectionFactory factory = new ConnectionFactory();
        // 连接工厂配置
        factory.setHost("192.168.68.152");
        factory.setPort(5672);
        factory.setUsername("lwx");
        factory.setPassword("lwx");
        factory.setVirtualHost("/lwx");
        // 创建连接
        Connection connection = factory.newConnection();    //Connection间接继承了AutoCloseable接口,可以不用手动关闭连接
        // 创建信道
        Channel channel = connection.createChannel();
        // 绑定队列
        channel.queueDeclare(QUEUE_NAME,false,false,false,null);
        System.out.println("[*] Waiting for messages. To exit press CTRL+C");
        // 打印消息
        DeliverCallback deliverCallback = (consumerTag, delivery) -> {
            String message = new String(delivery.getBody(), "UTF-8");
            System.out.println("[x] Received '" + message + "'");
        };
        
        channel.basicConsume(QUEUE_NAME,true,deliverCallback,consumerTag -> {

        });
    }
}
运行结果 运行生产者Send


运行消费者Recv


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/763885.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号