spring boot 三步集成rabbitmq

引入依赖

xml 复制代码
		<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>

编写config类

java 复制代码
@Configuration
public class RabbitmqConfig {
    public static final String RECORD_QUEUE = "teaching-assistant-record_queue";
    @Bean
    public Jackson2JsonMessageConverter jsonMessageConverter() {
        return new Jackson2JsonMessageConverter();
    }
    @Bean
    public Queue queue() {
        //创建一个队列队列,并指定队列的名字
        return new Queue(RECORD_QUEUE,true);
    }
}

使用rabbitmq

java 复制代码
@Override
    public String add(ExamRecordDto examRecordDto) {
        rabbitTemplate.convertAndSend("", RabbitmqConfig.RECORD_QUEUE,examRecordDto);
        return "Exam record added successfully";
    }
    @Autowired
    private ExamRecordMapper examRecordMapper;
    @RabbitListener(queues = {RabbitmqConfig.RECORD_QUEUE})
    public void receiveHelloQueueMessage(ExamRecordDto examRecordDto) {
        System.out.println("消费者收到消息:"+examRecordDto.toString());
        QueryWrapper<ExamRecordEntity> queryWrapper=new QueryWrapper<>();
        queryWrapper.eq("exam_id",examRecordDto.getExamId());
        queryWrapper.eq("exercise_id",examRecordDto.getExerciseId());
        queryWrapper.eq("user_id",examRecordDto.getUserId());
        if(examRecordMapper.selectOne(queryWrapper)!=null){
            examRecordMapper.delete(queryWrapper);
        }
        examRecordMapper.insert(examRecordDto.toEntity());
    }
相关推荐
swg32132117 小时前
Spring Boot 3.X Oauth2 认证服务与资源服务
java·spring boot·后端
gelald17 小时前
SpringBoot - 自动配置原理
java·spring boot·后端
@yanyu66617 小时前
07-引入element布局及spring boot完善后端
javascript·vue.js·spring boot
程序猿_极客19 小时前
SpringBoot 三大参数注解详解:@RequestParam @RequestBody @PathVariable 区别及常用开发注解
java·spring boot·后端·面试八股文·springboot注释
小胖java19 小时前
校园通衢公告枢纽系统
java·spring boot
Hadoop_Liang20 小时前
构建Spring Boot项目Docker镜像
spring boot·后端·docker
Flittly20 小时前
【SpringAIAlibaba新手村系列】(14)MCP 本地服务与工具集成
java·spring boot·笔记·spring·ai
Flittly20 小时前
【SpringAIAlibaba新手村系列】(13)Tool Calling 函数工具调用技术
java·spring boot·spring·ai
my_styles21 小时前
linux系统下安装 tengine / 宝兰德等国产信创中间件和闭坑
linux·运维·服务器·spring boot·nginx·中间件
coder阿龙21 小时前
基于SpringAI+Qdrant+Ollama本地模型和向量数据库开发问答和RAG检索
java·数据库·spring boot·ai·数据库开发