創建Maven工程01-rabbitmq-send
添加Maven依賴
<dependencies>
<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
<version>5.1.1</version>
</dependency>
</dependencies>
編寫消息發送類
在01-rabbitmq-send項目中創建,com.bjpowernode.rabbitmq.Send類
public class Send{
public static void main(String[] args) throws IOException, TimeoutException {
//創建鏈接工廠對象
ConnectionFactory factory=new ConnectionFactory();
factory.setHost("192.168.171.143");//設置RabbitMQ的主機IP
factory.setPort(5672);//設置RabbitMQ的端口號
factory.setUsername("root");//設置訪問用戶名
factory.setPassword("root");//設置訪問密碼
Connection connection=null;//定義鏈接對象
Channel channel=null;//定義通道對象
connection=factory.newConnection();//實例化鏈接對象
channel=connection.createChannel();//實例化通道對象
String message ="Hello World!3";
String exchangeName="myExchange";
//指定Exchange的類型
//參數1為 交換機名稱
//參數2為交換機類型取值為 direct、fanout、topic、headers
//參數3 為是否為持久化消息 true表示持久化消息 false表示非持久化
channel.exchangeDeclare(exchangeName, "direct", true);
//發送消息到RabbitMQ
//參數1 我們自定義的交換機名稱
//參數2 自定義的RoutingKey值
//參數3 設置消息的屬性,可以通過消息屬性設置消息是否是持久化的
//參數4 具體要發送的消息信息
channel.basicPublish(exchangeName,"myRoutingKey",null,message.getBytes("UTF-8"));
System.out.println("消息發送成功: "+message);
channel.close();
connection.close();
}
}
以運行Send類觀看管控臺的變化