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 星期二