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());
    }
相关推荐
paopaokaka_luck3 小时前
基于springboot+vue的益暖微光公益服务平台(DeepSeek公益助手、善款信息追溯、志愿服务积分闭环、ECharts运营分析、活动状态自动流转)
java·前端·javascript·spring boot·mysql·架构·echarts
软件技术NINI5 小时前
基于SpringBoot和Vue的摇滚乐鉴赏网站
vue.js·spring boot·后端·spring·html·毕业设计·毕设
学长毕设6 小时前
基于SpringBoot的校园礼服租赁系统的设计与实现
java·spring boot·后端
计算机毕设定制辅导-无忧学长6 小时前
《基于物品协同过滤的闲置书换购微信小程序设计开发》
java·vue.js·spring boot·微信小程序·uniapp·闲置书换购微信小程序·物品协同过滤算法
Best_Liu~6 小时前
SpringBoot全局日期格式化
java·spring boot·后端
RuoyiOffice6 小时前
SpringBoot3 + openGauss:RuoYi Office 登录、流程发布与用印填报适配实战
java·数据库·spring boot·opengauss·信创
Dwzun6 小时前
基于SpringBoot3+Vue3的油莎豆种植管理系统
java·前端·vue.js·spring boot·后端·python·计算机网络
学长毕设15 小时前
基于SpringBoot的实验室资产管理系统
java·spring boot·后端
zzu123zsw16 小时前
从臃肿的模板调用到声明式契约:深入 UniHttp 动态代理与多渠道生命周期扩展
java·spring boot·microsoft·unihttp
源码集结号17 小时前
云诊所门诊系统源码,基于SpringBoot+Vue.js架构,支持多租户设计与Docker容器化部署
java·spring boot·源码·医院信息系统·门诊系统·诊所系统