1、RabbitMQ官网工作(即work)模式的架构图
org.springframework.amqp
spring-rabbit
1.4.0.RELEASE
com.rabbitmq
amqp-client
3.4.1
3、MQ获取连接工具类代码如下:
package com.rf.rabiitmq.util;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;
/**
* @description: mq连接工具类
* @author: xiaozhi
* @create: 2020-04-21 09:03
*/
public class ConnectionUtil {
/**
* @Description: 获取mq连接方法
* @Param: []
* @Author: xz
* @return: com.rabbitmq.client.Connection
* @Date: 2020/4/21 9:19
*/
public static Connection getConnection() throws Exception {
//定义连接工厂
ConnectionFactory connectionFactory=new ConnectionFactory();
//以下信息,在安装mq后,登录mq客户端进行配置的信息
connectionFactory.setHost("localhost");//设置服务地址
connectionFactory.setPort(5672);//设置端口
connectionFactory.setVirtualHost("xzVirtualHosts");//设置虚拟主机名称
connectionFactory.setUsername("xz");//设置用户名
connectionFactory.setPassword("xz");//设置密码
//通过连接工厂获取连接
Connection connection = connectionFactory.newConnection();
return connection;
}
}
4、消息发送者,即服务端代码如下:
package com.rf.rabiitmq.work;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rf.rabiitmq.util.ConnectionUtil;
/**
* @description: work模式 消息发布者
* @author: xiaozhi
* @create: 2020-04-21 13:44
*/
public class WorkSend{
private final static String QUEUE_NAME="work_queue";//声明队列名称
public static void main(String[] args) throws Exception{
//获取mq连接
Connection connection = ConnectionUtil.getConnection();
//从连接中创建通道
Channel channel = connection.createChannel();
/**
* 声明队列
* @param1 队列的名称
* @param2 是否持久化 如果true(该队列将在服务器重启后继续存在)
* @param3 是否排外 即只允许该channel访问该队列 一般等于true的话用于一个队列只能有一个消费者来消费的场景
* @param4 如果我们声明一个自动删除队列(服务器将在不再使用时删除它)
* @param5 参数队列的其他属性(构造参数)
*/
channel.queueDeclare(QUEUE_NAME,false,false,false,null);
for(int i=0;i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?