一、如何连接到RabbitMq
创建连接
1、参数方式:
ConnectionFactory factory = new ConnectionFactory();
// "guest"/"guest" by default, limited to localhost connections
factory.setUsername(userName);
factory.setPassword(password);
factory.setVirtualHost(virtualHost);
factory.setHost(hostName);
factory.setPort(portNumber);
Connection conn = factory.newConnection();
2、url方式
ConnectionFactory factory = new ConnectionFactory();
factory.setUri("amqp://userName:password@hostName:portNumber/virtualHost");
Connection conn = factory.newConnection();
关闭连接
channel.close();
conn.close();
Connection和Channel
Connection是RabbitMQ的socket链接,它封装了socket协议相关部分逻辑。
Channel是我们与RabbitMQ打交道的最重要的一个接口,我们大部分的业务操作是在Channel这个接口中完成的,包括定义Queue、定义Exchange、绑定Queue与Exchange、发布消息等
二、Exchanges and Queues(重点关注)
1、创建Exchanges、Queues,并绑定
channel.exchangeDeclare(exchangeName, "direct", true);
String queueName = channel.queueDeclare().getQueue();
channel.queueBind(queueName, exchangeName, routingKey);
exchange:非自动删除,路由规则:direct
queue:自动删除,排他、非持久化
声明exchange、queue的
参考文献:
官方文档-api-guide