From 9b5935ba7d8e161aa1c59c5b44b5b1c8b2ff0162 Mon Sep 17 00:00:00 2001 From: wangxianzhang Date: Mon, 30 May 2022 09:50:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=9A=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96-=E5=88=9D=E5=A7=8B=E5=8C=96?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AE=AE=E9=A2=98=E5=88=86=E7=B1=BB=E7=9A=84?= =?UTF-8?q?listern=EF=BC=8C@Autowire=E6=B3=A8=E5=85=A5=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=E7=9A=84=E9=94=99=E8=AF=AF=E7=94=A8=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/mq/RocketMQConsumerRegister.java | 20 ++++++++++++++++++- .../IssueProjectCategoryTagInitListener.java | 12 +++++------ 2 files changed, 25 insertions(+), 7 deletions(-) diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/RocketMQConsumerRegister.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/RocketMQConsumerRegister.java index 9a5e2da482..65b2b9961f 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/RocketMQConsumerRegister.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/RocketMQConsumerRegister.java @@ -4,17 +4,35 @@ import com.epmet.commons.rocketmq.constants.ConsomerGroupConstants; import com.epmet.commons.rocketmq.constants.TopicConstants; import com.epmet.commons.rocketmq.register.MQAbstractRegister; import com.epmet.commons.rocketmq.register.MQConsumerProperties; +import com.epmet.commons.tools.distributedlock.DistributedLock; +import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.mq.listener.IssueProjectCategoryTagInitListener; +import com.epmet.service.IssueProjectCategoryDictService; import org.apache.rocketmq.common.protocol.heartbeat.MessageModel; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public class RocketMQConsumerRegister extends MQAbstractRegister { + @Autowired + private IssueProjectCategoryDictService issueProjectCategoryDictService; + + @Autowired + private DistributedLock distributedLock; + + @Autowired + private RedisUtils redisUtils; + @Override public void registerAllListeners(String env, MQConsumerProperties consumerProperties) { // 客户初始化监听器注册 - register(consumerProperties, ConsomerGroupConstants.ISSUE_PROJECT_CATEGORY_TAG, MessageModel.CLUSTERING, TopicConstants.INIT_CUSTOMER, "*", new IssueProjectCategoryTagInitListener()); + register(consumerProperties, + ConsomerGroupConstants.ISSUE_PROJECT_CATEGORY_TAG, + MessageModel.CLUSTERING, + TopicConstants.INIT_CUSTOMER, + "*", + new IssueProjectCategoryTagInitListener(issueProjectCategoryDictService, distributedLock, redisUtils)); // ...其他监听器类似 } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/listener/IssueProjectCategoryTagInitListener.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/listener/IssueProjectCategoryTagInitListener.java index a9eb9c436f..2e7c269025 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/listener/IssueProjectCategoryTagInitListener.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/mq/listener/IssueProjectCategoryTagInitListener.java @@ -31,21 +31,21 @@ public class IssueProjectCategoryTagInitListener implements MessageListenerConcu private Logger logger = LoggerFactory.getLogger(getClass()); - @Autowired private IssueProjectCategoryDictService issueProjectCategoryDictService; - @Autowired private DistributedLock distributedLock; private RedisUtils redisUtils; + public IssueProjectCategoryTagInitListener(IssueProjectCategoryDictService issueProjectCategoryDictService, DistributedLock distributedLock, RedisUtils redisUtils) { + this.issueProjectCategoryDictService = issueProjectCategoryDictService; + this.distributedLock = distributedLock; + this.redisUtils = redisUtils; + } + @Override public ConsumeConcurrentlyStatus consumeMessage(List msgs, ConsumeConcurrentlyContext context) { - if (redisUtils == null) { - redisUtils = SpringContextUtils.getBean(RedisUtils.class); - } - try { msgs.forEach(msg -> consumeMessage(msg)); } catch (Exception e) {