【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. 方式二

基于业务

相关推荐
SimonKing3 小时前
Workbuddy太占C盘空间了,写个迁移工具迁走10G的数据
java·后端·程序员
Hvitur4 小时前
Java - Lambda
java·开发语言·python
apcipot_rain9 小时前
C++转Java日记(06)
java·开发语言
金銀銅鐵13 小时前
带您看懂字节码指令(一):一帧里有什么
java·后端·ai编程
nice_lcj52015 小时前
【从零理解 Spring AI · 14】RAG 的四个环节:加载、切分、向量化、检索
java·spring boot·embedding·向量数据库·rag·spring ai·ai应用开发
学长毕设17 小时前
基于springboot科创竞赛信息平台-附源码
java·spring boot·后端
聪明的笨猪猪17 小时前
Java 工程案例:AI 生成 @Async 异步线程池踩坑
java·经验分享·面试·ai编程
学长毕设18 小时前
基于SpringBoot公务员考试交流平台-附源码
java·spring boot·后端
SL_staff20 小时前
私有化低代码:面向强监管行业的可控数字化实践
java·低代码
三翼鸟数字化技术团队21 小时前
高性能存储引擎RocksDB:原理与Java生态实践
java