【RabbitMQ】07-业务幂等处理

1. 方式一

序列化设置唯一Id。

java 复制代码
    @Bean
    public MessageConverter messageConverter() {
        Jackson2JsonMessageConverter jjmc = new Jackson2JsonMessageConverter();
        jjmc.setCreateMessageIds(true);
        return jjmc;
    }
java 复制代码
    @RabbitListener(bindings = @QueueBinding(
            value = @Queue(name = "direct.queue1"),
            exchange = @Exchange(name = "hmall.direct", type = ExchangeTypes.DIRECT),
            key = {"red", "yellow"}
    ))
    public void topicLister1(Message msg) {
        log.info("测试" + msg.getMessageProperties().getMessageId());
        System.out.println(new String(msg.getBody()));
        // throw new RuntimeException("用于测试的异常");
    }

2. 方式二

基于业务

相关推荐
弹简特几秒前
【JavaEE】Mybatis实现分页查询功能
java·java-ee·mybatis
烤麻辣烫3 分钟前
I/O流 基础流
java·开发语言·学习·intellij-idea
Jasonakeke3 分钟前
我的编程来时路
java·c++·python
Yvonne爱编码8 分钟前
Java 中的 hashCode () 与 equals () 核心原理、契约规范、重写实践与面试全解
java·开发语言·数据结构·python·hash
gelald10 分钟前
JVM - 运行时内存模型
java·jvm·后端
老虎062711 分钟前
Java基础面试题(08)—Java(集合—HashMap的使用和实现原理红黑树)
java·开发语言
左左右右左右摇晃42 分钟前
Java笔记——JMM
java·后端·spring
Schengshuo1 小时前
Spring学习——新建module模块
java·学习·spring
Memory_荒年1 小时前
Nacos双面超人:注册中心 + 配置中心,一个都不能少!
java·后端·架构
柒.梧.1 小时前
深入浅出理解原子操作:从单核到多核的实现原理
java