spring boot 2.2.4集成 rabbitmq

安装

软件地址

所需安装包

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值