1,安装rabbitmq.我的是ubuntu14.04,在官网上面下载最新的安装文件http://www.rabbitmq.com/install-debian.html
2.安装完之后 启动rabbitmq, sudo rabbitmq-server
3.下载jar包
4.最简单的hello world的实现
Sender类
package com.lubby.test; import java.io.IOException;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory; public class ClientSender {
private final static String QUEUE_NAME = "hello"; public static void main(String[] args) throws IOException {
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("127.0.0.1");
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()); System.out.println(" Sent: '" + message + "'");
channel.close();
connection.close();
}
}
Receiver类
package com.lubby.test; import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.QueueingConsumer; public class ClientReceiver {
private final static String QUEUE_NAME = "hello"; public static void main(String[] argv) throws java.io.IOException,
java.lang.InterruptedException { ConnectionFactory factory = new ConnectionFactory();
factory.setHost("127.0.0.1");
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"); QueueingConsumer consumer = new QueueingConsumer(channel);
channel.basicConsume(QUEUE_NAME, true, consumer);
while (true) {
QueueingConsumer.Delivery delivery = consumer.nextDelivery();
String message = new String(delivery.getBody());
System.out.println(" Received:'" + message + "'");
}
}
}
5.測试
启动ClientReceiver-
[*] Waiting for messages. To exit press CTRL+C
启动ClientSender
Sent: 'Hello World'
ClientReceiver接收到消息
[*] Waiting for messages. To exit press CTRL+C
Received:'Hello World'
版权声明:本文博客原创文章,博客,未经同意,不得转载。