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());
    }
相关推荐
程序员张32 小时前
Mybatis条件判断某属性是否等于指定字符串
java·spring boot·mybatis
invicinble4 小时前
从逻辑层面理解Shiro在JVM中是如何工作的
jvm·spring boot
好好研究6 小时前
SpringBoot注解的作用
java·spring boot·spring
Libby博仙7 小时前
Spring Boot 条件化注解深度解析
java·spring boot·后端
子非鱼9217 小时前
SpringBoot快速上手
java·spring boot·后端
我爱娃哈哈8 小时前
SpringBoot + XXL-JOB + Quartz:任务调度双引擎选型与高可用调度平台搭建
java·spring boot·后端
Coder_Boy_8 小时前
基于SpringAI的在线考试系统-AI智能化拓展
java·大数据·人工智能·spring boot
内存不泄露8 小时前
二手物品交易平台
spring boot·小程序·django
n***33358 小时前
TCP/IP协议栈深度解析技术文章大纲
java·spring boot