RabbitMQ案例

1. 导入依赖

XML 复制代码
 <!--AMQP依赖,包含RabbitMQ-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>

发送消息


注入RabbitTemplate

java 复制代码
@Autowired
RabbitTemplate rabbitTemplate;

java 复制代码
  //队列
        String queueName = "test.query";
        //消息
        String message = "hello rabbitmq";
        //发送消息
        rabbitTemplate.convertAndSend(queueName,message);

监听接收消息

只需要在方法上添加注解即可

java 复制代码
 @RabbitListener(queues = "test.query")
java 复制代码
 @RabbitListener(queues = "test.query")
    void contextLoads(Object msg) {
        System.out.println("msg = " + msg);
    }

work模型

  1. 多个消费者绑定同一个队列,提升处理消息的速度

  2. 同一个消息只会被同一个消费者处理

  3. 通过prefetch限制一次只能消费一条消息,处理完才能处理下一条,实现能者多劳

java 复制代码
spring:
  rabbitmq:
    host: localhost
    port: 5672
    virtual-host: /hmall
    username: hmall
    password: 123
    listener:
      simple:
        prefetch: 1 # 每个消费者一次消费一个消息

嘿嘿嘿李博文到此一游

相关推荐
唐青枫19 小时前
Java JDBC 实战指南:从 Connection 到事务和连接池
java
一个做软件开发的牛马20 小时前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解
java·后端
用户37215742613520 小时前
Java 处理 PDF 图片:提取 PDF 中的图片,并压缩 PDF 图片体积
java
用户37215742613520 小时前
Java 打印 Word 文档:从基础打印到高级设置
java
用户3521802454752 天前
当 Prompt 学会"热更新":Spring Boot × Nacos3 AI 实战
java·spring boot·ai编程
东坡白菜2 天前
破局全栈:一个前端开发的Java入门实战记录(1)
java·全栈
唐青枫2 天前
Java Tomcat 实战指南:从 Servlet 容器到 Spring Boot 部署
java
wsaaaqqq2 天前
roudan:自由选择实体、灵活操作数据、快速写入数据库的 Java 框架
java
plainGeekDev2 天前
null 判断 → Kotlin 可空类型
android·java·kotlin
糖拌西瓜皮2 天前
Java开发者视角:深入理解Node.js异步编程模型
java·后端·node.js