安装
软件地址
https://download.csdn.net/download/qq_41291945/12774259
所需环境
- rabbitmq-server-3.7.4.exe
- otp_win64_20.3.exe
安装 otp_win64_20.3.exe
RabbitMQ服务端代码是使用并发式语言Erlang编写的,安装Rabbit MQ的前提是安装Erlang。
安装 otp_win64_20.3 十分简单, 直接双击傻瓜式安装即可,但是安装的时候需要记住安装的位置, 因为后续需要设置环境变量。
配置环境变量
1、新建立环境变量
- 变量名 ERLANG_HOME
- 变量值 C:\Program Files\erl9.3 (你安装的具体位置)
2、path 中添加
- %ERLANG_HOME%\bin
3、测试
在 cmd 下输入 erl
安装 rabbitmq
- 双击下载后的.exe文件,安装过程与erlang的安装过程相同。
- RabbitMQ安装好后接下来安装RabbitMQ-Plugins。打开命令行cd,输入RabbitMQ的sbin目录。
安装管理插件
sbin目录 下打开 cmd 执行命令
- rabbitmq-plugins enable rabbitmq_management
如下图所示便是成功了!
启动
点击 rabbitmq-server.bat启动即可, 如果启动失败, 请计算机的服务中查看是否已经开启了 服务, 如果开启请关闭后重新启动. 出现如下便是成功启动!
- 访问管理界面 http://localhost:15672/#/
- 初始化账号密码: guest
spring boot 集成 mq
依赖
添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
配置
spring:
application:
name: rabbitmq-send
rabbitmq:
host: localhost
port: 5672
username: guest
password: guest
server:
port: 4001
@Configuration
public class Mq {
private final String QUEUE_NAME = "hello";
@Bean
public Queue helloQueue(){
return new Queue(QUEUE_NAME);
}
}
运行启动类
此时已经连接到了 mq
编码
1 发送者
@Component
public class Sender {
@Autowired
private AmqpTemplate rabbitTemplate;
public void send() {
String context = "hello - > " + new Date();
System.out.println("Sender :" + context);
//hello为创建的队列名,context为发送的消息
this.rabbitTemplate.convertAndSend("hello", context);
}
}
2 监听者
@RabbitListener(queues = "hello")
@Component
public class Receive {
/**
* 处理接受到的消息
* @param hello
*/
@RabbitHandler
public void process(String hello){
System.out.println("Receiver:"+hello);
}
}
3 controller 测试
@RestController
public class SendController {
@Resource
private Sender sender;
@GetMapping("mq")
public String mq() {
sender.send();
return "消息已发送..";
}
成功集成 !!!
参考链接
-
RabbitMQ启动管理插件报错解决方案: https://blog.csdn.net/weixin_39270764/article/details/80907917
-
RabbitMQ安装后无法启动问题:https://blog.csdn.net/weixin_38256991/article/details/79106956
-
RabbitMQ 安装 rabbitmq-plugins 报错: https://blog.csdn.net/u012688704/article/details/82190065?utm_source=distribute.pc_relevant.none-task
-
springboot集成rabbitMq遇到的坑:https://blog.csdn.net/chehec2010/article/details/84891824