How to consume one message?

前端 未结 3 858
有刺的猬
有刺的猬 2021-01-13 05:56

With example in rabbitmq, consumer get all messages from queue at one time. How to consume one message and exit?

QueueingConsumer consumer = new QueueingCons         


        
3条回答
  •  时光取名叫无心
    2021-01-13 06:08

    Use AMQP 0.9.1 basic.get to synchronously get just one message.

    ConnectionFactory factory = new ConnectionFactory();
    factory.setUri(uri);
    
    Connection connection = factory.newConnection();
    Channel channel = connection.createChannel();
    
    channel.queueDeclare(QUEUE_NAME, true, false, false, null);
    
    GetResponse response = channel.basicGet(QUEUE_NAME, true);
    if (response != null) {
        String message = new String(response.getBody(), "UTF-8");
    }
    
    channel.close();
    connection.close();
    

提交回复
热议问题