show-cloud(十一)添加删除帐套的mq队列

本文详细介绍了如何使用RabbitMQ进行队列配置,包括依赖添加、队列监听类的创建,以及如何实现队列中日志数据的消费处理,特别聚焦于帐套删除操作的日志处理流程。

第一步:配置队列
在这里插入图片描述
第二步:确认队列是否创建,登陆到rabbitMq的web管理界面
在这里插入图片描述

第三步:对show-cloud-users-service添加相应对依赖

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>

第四步:添加mq处理类,也就是队列监听
在这里插入图片描述

package org.go.show.users.rabitMqHandler;

import lombok.extern.slf4j.Slf4j;
import org.go.show.common.constants.LogQueue;
import org.go.show.users.i.AccountService;
import org.go.show.users.pojo.Account;
import org.springframework.amqp.rabbit.annotation.RabbitHandler;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

/**
 * 从mq队列消费日志数据
 *
 *
 */
@Component
@Slf4j
public class RabitMqHandler {


	@Value("${goshow.log.logServiceBean:logServiceDBImpl}")
	String logServiceBean;

	@Autowired
	AccountService accountService;


	/**
	 * 监听帐套删除队列
	 *
	 * @param accountId
	 */
	@RabbitHandler
	@RabbitListener(queues = LogQueue.DEL_ACCOUNT_QUEUE) // 监听队列
	public void delAccountHandler(String accountId) {
		try {
			accountService.delAccountRelInfo(accountId);
		} catch (Exception e) {
			log.error("删除帐套操作,日志:{},异常:{}", accountId, e);
		}
	}
}

第五步:实现关联信息的删除操作。