From 41db04adedf2eb42e8765ef91a582c905eef3bda Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Sun, 14 Mar 2021 08:43:47 +0800 Subject: [PATCH] 创建订单采用广播形式 --- zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java b/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java index a1dac18..ce1ff16 100644 --- a/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java +++ b/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java @@ -36,7 +36,7 @@ public static final String MQ_EXCHANGE_A = "hive_exchange_A"; //订阅模式 - public static final String MQ_EXCHANGE_FANOUT = "hive_exchange_fanout"; + public static final String MQ_EXCHANGE_TOPIC = "hive_exchange_fanout"; @Bean VipCreateTask VipCreateTask() { @@ -46,6 +46,10 @@ @Bean OrderTask OrderrCreateTask() { return new OrderTask(); + } + @Bean + SalesOrderTask SalesOrderTask() { + return new SalesOrderTask(); } @Bean @@ -71,18 +75,24 @@ //声明一个交换机 rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_A+evn, "direct"); - rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_FANOUT+evn, "fanout"); + rabiitMqTemplate.exchangeDeclare(MQ_EXCHANGE_TOPIC +evn, "topic"); List<MqTask> taskList = new ArrayList<>(); //注册RabbitMq任务 taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.CREATE_VIP + evn, MQTaskRouting.CREATE_VIP + evn, VipCreateTask())); //订阅模式 - taskList.add(new MqTask(MQ_EXCHANGE_FANOUT + evn, MQTaskRouting.CREATE_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,OrderrCreateTask())); + + taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_TEMPLATE_MSG + evn,MQTaskRouting.SEND_TEMPLATE_MSG + evn, TemplateMsgTask())); taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.ORDER_OUT_SOTORE + evn,MQTaskRouting.ORDER_OUT_SOTORE + evn, OrderOutSotoreTask())); taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn,MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn, UniformMsgSentTask())); + //不同任务在不同的队列,但是routingKey一样则可以收到生产者消息 + taskList.add(new MqTask(MQ_EXCHANGE_TOPIC + evn, MQTaskRouting.CREATE_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,SalesOrderTask())); + taskList.add(new MqTask(MQ_EXCHANGE_TOPIC + evn, MQTaskRouting.SALES_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,OrderrCreateTask())); + + rabiitMqTemplate.binding(taskList); return rabiitMqTemplate; -- Gitblit v1.9.1