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

RabbitMQ简单实现通信

Java 更新时间:发布时间: 百科书网 趣学号

在RabbitMQ已经正常安装好,并且正常登陆 的情况下

在此我会用java代码实现生产者P和消费者C,rabbitMq就是连接他们通信的中间件,用来作为消息缓冲区。我是用的idea作为开发工具

接下来进入正题

为了方便容纳所有的代码,我们先创建空项目,实际上我们要写的是maven项目

自定义项目名称

创建项目完成后,idea让我们建立模块,刚才我说我们实际是maven项目,所以建立Maven模块

 我用的是jdk8,当然最推荐的也是8

 自定义模块名称,创建,

创建完成成以后,引入相关依赖


        
        
            com.rabbitmq
            amqp-client
            5.8.0
        
        
        
            commons-io
            commons-io
            2.6
        
    

引入依赖并刷新后可以看到,一下内容说明成功

我们需要先写生产者的代码,用来产生消息,发送消息到MQ,再写,消费者用来接受消息

注意把所有的版本改为JDK8

 

生产者部分。

public class Producer {
    public static final String NAME = "Producer";

    public static void main(String[] args) throws IOException, TimeoutException {
        //创建连接工厂
        ConnectionFactory factory = new ConnectionFactory();
        //工厂IP 连接MQ
        factory.setHost("IP");
        //用户名
        factory.setUsername("用户");
        //密码
        factory.setPassword("密码");
        //创建连接
        Connection connection = factory.newConnection();
        //获取信道
        Channel channel = connection.createChannel();
        //创建队列

       
        channel.queueDeclare(NAME,false,false,false,null);
        String msg = "Hello";
        
        channel.basicPublish("",NAME,null,msg.getBytes());
        

    }
}

然后就是消费者代码

package com.zth.rabbit.one;

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 Producer {
    public static final String NAME = "Producer";

    public static void main(String[] args) throws IOException, TimeoutException {
        //创建连接工厂
        ConnectionFactory factory = new ConnectionFactory();
        //工厂IP 连接MQ
        factory.setHost("IP");
        //用户名
        factory.setUsername("用户");
        //密码
        factory.setPassword("密码");
        //创建连接
        Connection connection = factory.newConnection();
        //获取信道
        Channel channel = connection.createChannel();
        //创建队列

        

       
        channel.queueDeclare(NAME,false,false,false,null);
        String msg = "Hello";
        
        channel.basicPublish("",NAME,null,msg.getBytes());


    }
}

测试

生产者产生消息

 

消费者接收成功

 在rabbit可以看到了,消息生产和消费的波段

 

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

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号