RabbitMQ第一个程序 Java实现


导入Maven依赖

        
            com.rabbitmq
            amqp-client
            5.7.3
        
       
            org.slf4j
            slf4j-simple
            1.7.22
        
        
            org.slf4j
            slf4j-api
            1.7.30
        

先创建生产者类

public class Provider{
	private final static String queueName = "queue2";
	public static void main(String[] args){
		//创建工厂
		ConnectionFactoey factory = new ConnectionFactory();
		//设置连接信息
		factory.setHost("127.0.0.1");
		factory.setPort(5672);
		//设置为自己的用户名 and 密码
		factory.setUsername("admin");
		factoy.setPassword("admin");
		factory.setVirtualHost("/");
		
		//创建连接
		Connection connection = factory.newConnection();
		//创建通道
		Channel channel = connection.createChannel();
		
		//设置参数
		channel.queqeDeclare(queueName,false,falsefalse,null);
		//要发送的消息
		String msg = "Hello";
		channel.queueDeclare("",queueName,null,msg.getBytes());
		System.out.prinln("Sent: "+msg)
	}
}

创建消费者

public class Consumer {
    private final static String QUEUE_NAME = "queue2";

    public static void main(String[] argv) throws Exception {
        ConnectionFactory factory = new ConnectionFactory();
        factory.setHost("127.0.0.1");
        factory.setPort(5672);
        factory.setUsername("admin");
        factory.setPassword("admin");
        factory.setVirtualHost("/");
        Connection connection = factory.newConnection();
        //创建通道
        Channel channel = connection.createChannel();

        channel.queueDeclare(QUEUE_NAME, false, false, false, null);
        System.out.println(" [*]接收消息中。。。 CTRL+C 退出");

        DeliverCallback deliverCallback = (consumerTag, delivery) -> {
            String message = new String(delivery.getBody(), "UTF-8");
            System.out.println(" [x] 接收到的消息: '" + message + "'");
        };
        channel.basicConsume(QUEUE_NAME, true, deliverCallback, consumerTag -> {
            System.out.println("consumerTag = " + consumerTag);
        });

    }
}

  • 先运行生产者,运行消费者
  • 打开浏览器地址栏输入localhost:15672 点击Queues标签会发现多了这一行
  • 这样就完成了

这样就用代码完成了第一个RabbitMQ的程序
让我们努力学习
2021-11-09 21:11:33 星期二