pom文件
<dependencies> <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>5.1.2</version> </dependency> </dependencies>
测试
public static void main(String[] args) {
//创建连接工厂
ConnectionFactory factory = new ConnectionFactory();
// 设置连接属性
factory.setHost("localhost");
factory.setPort(5672);
factory.setUsername("admin");
factory.setPassword("admin");
Connection connection = null;
Channel channel = null;
try{
// 3、 从链接工厂获取连接
connection = factory.newConnection("生产者");
// 4、从链接中创建通道
channel = connection.createChannel();
/**
* 5、声明队列
* @param queue 队列名称
* @param durable 是否持久化
* @param exclusive 是否排他
* @param autoDelete 是否自动删除
* @param arguments 队列参数
*/
//channel.queueDeclare("qeueu1", false, false, null)
channel.queueDeclare("queue1", false, false,false, null);
//消息内容
String message = "hellow world";
// 6、发起消息
channel.basicPublish("","queue1",null,message.getBytes());
System.out.println("消息已发送。");
}catch (IOException e){
e.printStackTrace();
}catch (TimeoutException e1){
e1.printStackTrace();
}
}
rabbitmq界面


消费者
public static void main(String[] args) {
//创建连接工厂
ConnectionFactory factory = new ConnectionFactory();
// 设置连接属性
factory.setHost("localhost");
factory.setPort(5672);
factory.setUsername("admin");
factory.setPassword("admin");
Connection connection = null;
Channel channel = null;
try{
// 3、 从链接工厂获取连接
connection = factory.newConnection("消费者");
// 4、从链接中创建通道
channel = connection.createChannel();
/**
* 5、声明队列
* @param queue 队列名称
* @param durable 是否持久化
* @param exclusive 是否排他
* @param autoDelete 是否自动删除
* @param arguments 队列参数
*/
//channel.queueDeclare("qeueu1", false, false, null)
channel.queueDeclare("queue1", false, false,false, null);
// 6、发起消息
DeliverCallback callback = new DeliverCallback() {
public void handle(String consumerTag, Delivery delivery) throws IOException {
System.out.println("收到消息: " + new String(delivery.getBody(),"UTF-8"));
}
};
//7、监听队列
channel.basicConsume("queue1", true, callback, new CancelCallback() {
public void handle(String s) throws IOException {
}
});
System.out.println("收到消息。");
System.in.read();
}catch (IOException e){
e.printStackTrace();
}catch (TimeoutException e1){
e1.printStackTrace();
}
}
rabbitmq界面 消费消息
