1.使用idea或其他工具,创建一个java的maven工程;
2. 在pom文件中引入rabbitmq的jar包:
<!-- https://mvnrepository.com/artifact/com.rabbitmq/amqp-client -->
<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
<version>5.8.0</version>
</dependency>
3. 在自己创建的Java包中,创建rabbitmq的生产者类 RabbitmqProduct(类名根据自己的需要自己起名即可)
引入的类所在的位置
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.MessageProperties;
先定义几个变量:
//队列
private static final String QUEUQ_NAME ="demo.queue";
//交换器
private static final String EXCHANGE_NAME="demo.exchange";
//路由
private static final String LUYOU="demo.luyou";
//创建main方法
public static void main(String[]args)throws Exception{
//创建连接工厂
ConnectionFactory factory=new ConnectionFactory();
factory.setUsername("admin"); //自己定义
factory.setPassword("123456"); //自己定义
factory.setHost("192.168.0.132"); //rabbitmq安装的服务位置
factory.setPort(5672); //rabbitmq 端口
//创建连接
Connection connection=factory.newConnection();
//创建信道,在信道上传递消息
Channel channel=connection.createChannel();
//创建交换器
//direct:把消息路由到那些BindingKey和RoutingKey完全匹配的队列中;
channel.exchangeDeclare(EXCHANGE_NAME,"direct");
//创建队列
channel.queueDeclare(QUEUE_NAME,false,false,false,null);
//通过路由绑定交换器与队列
channel.queueBind(QUEUE_NAME,EXCHANGE_NAME,LUYOU);
//发送消息 第三个参数是属性标签的参数,第四个是 消息内容是个消息字节类型
channel.basicPublish(EXCHANGE_NAME,LUYOU, MessageProperties.PERSISTENT_TEXT_PLAIN,"Hello WOrld 你好".getBytes());
channel.close();
connection.close();
}
网友评论