rabbitmq windows 搭建 使用

搭建:

https://blog.csdn.net/liangwenmail/article/details/60870541

https://blog.csdn.net/qq_23303245/article/details/80406382

https://blog.csdn.net/u012637358/article/details/80078610

安装完成后打不开管理页面:

cmd执行命令:"C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.5\sbin\rabbitmq-plugins.bat" enable rabbitmq_management

使用:

https://blog.csdn.net/wangbing25307/article/details/80845641(原理好)

https://www.cnblogs.com/vipstone/p/9275256.html

https://www.rabbitmq.com/getstarted.html(官网教程)

https://www.cnblogs.com/xinxiucan/p/7940953.html(管理页面相关)

<!-- https://mvnrepository.com/artifact/com.rabbitmq/amqp-client -->
<dependency>
    <groupId>com.rabbitmq</groupId>
    <artifactId>amqp-client</artifactId>
    <version>5.6.0</version>
</dependency>

package pit.rabbitmq;

import java.io.IOException;
import java.io.UnsupportedEncodingException;

import com.rabbitmq.client.AMQP;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.Consumer;
import com.rabbitmq.client.DefaultConsumer;
import com.rabbitmq.client.DeliverCallback;
import com.rabbitmq.client.Envelope;

public class MqConsummer {
    public static void main(String args[]){
        String QUEUE_NAME="hello";
        Connection connection=MqConnection.getMqConnection();
        try {
            Channel channel=connection.createChannel();
            //声明通道
            channel.queueDeclare(QUEUE_NAME,false,false,false,null);
            //定义消费者
            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 -> { });
        } catch (IOException e) {
            e.printStackTrace();
        }
        
    }
}
 

package pit.rabbitmq;

import java.io.IOException;
import java.util.concurrent.TimeoutException;

import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;

public class MqProducer {
    static String QUEUE_NAME="hello";
    public static void main(String[] args) {
        //创建连接
        Connection connection=MqConnection.getMqConnection();
        //生产消息
        //创建通道
        Channel channel = null;
        try {
            channel = connection.createChannel();
            //声明创建队列
            channel.queueDeclare(QUEUE_NAME,false,false,false,null);
            //消息内容
            String message = "Hello World!123";
            int count=100;
            for(int i=0;i<count;i++){
                channel.basicPublish("",QUEUE_NAME,null,(message+i).getBytes());
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
            
            
        } catch (IOException e) {
            e.printStackTrace();
            //关闭连接和通道
            try {
                channel.close();
                connection.close();
            } catch (IOException e1) {
                e1.printStackTrace();
            } catch (TimeoutException e1) {
                e1.printStackTrace();
            }            
        }
        //关闭连接和通道
        try {
            channel.close();
            connection.close();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (TimeoutException e) {
            e.printStackTrace();
        }
        
    }
}
 

猜你喜欢

转载自blog.csdn.net/u014161595/article/details/88535803