您的位置:首页 > 编程语言 > Java开发

java版RabbitMQ的hello world实现

2017-11-27 11:14 399 查看
windows安装RabbitMq:

http://blog.csdn.net/leisure_life/article/details/78642799

官网教程:http://www.rabbitmq.com/tutorials/tutorial-one-java.html

请确保正确安装了上述环境并使之处于运行状态


一下教程是根据官网教程操作的步骤

建一个Java项目,根据官网提示下载相应jar包:

jar包地址:

amqp-client-4.0.2.jar

slf4j-api-1.7.21.jar

slf4j-simple-1.7.22.jar




代码

send.java

package com.adtec.rabbitmq;

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

public class Send {

private final static String QUEUE_NAME = "hello";

public static void main(String[] argv) throws Exception {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();

channel.queueDeclare(QUEUE_NAME, false, false, false, null);
String message = "Hello World!";
channel.basicPublish("", QUEUE_NAME, null, message.getBytes("UTF-8"));
System.out.println(" [x] Sent '" + message + "'");

channel.close();
connection.close();
}
}


Recv.java

package com.adtec.rabbitmq;

import com.rabbitmq.client.*;

import java.io.IOException;

public class Recv {

private final static String QUEUE_NAME = "hello";

public static void main(String[] argv) throws Exception {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();

channel.queueDeclare(QUEUE_NAME, false, false, false, null);
System.out.println(" [*] Waiting for messages. To exit press CTRL+C");

Consumer consumer = new DefaultConsumer(channel) {
@Override
public void handleDelivery(String consumerTag, Envelope envelope, AMQP.BasicProperties properties, byte[] body)
throws IOException {
String message = new String(body, "UTF-8");
System.out.println(" [x] Received '" + message + "'");
}
};
channel.basicConsume(QUEUE_NAME, true, consumer);
}
}


运行send.java结果

[x] Sent 'Hello World!'


运行Recv.java结果

[*] Waiting for messages. To exit press CTRL+C
[x] Received 'Hello World!'
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  rabbitmq-android