Просмотр исходного кода

修改rabbitmqbug

release_toaliyun_real
xiaohanzi 5 лет назад
Родитель
Сommit
ca2582fed7
1 измененных файлов: 12 добавлений и 8 удалений
  1. +12
    -8
      mallinkMQConsumer/src/main/java/com/iformall/mq/impl/RabbitMqConsumer.java

+ 12
- 8
mallinkMQConsumer/src/main/java/com/iformall/mq/impl/RabbitMqConsumer.java Просмотреть файл

@@ -16,7 +16,7 @@ import javax.annotation.PostConstruct;
@Profile(MQConfig.Impl.RABBIT_MQ) @Profile(MQConfig.Impl.RABBIT_MQ)
public class RabbitMqConsumer extends MqBaseConsumer { public class RabbitMqConsumer extends MqBaseConsumer {
//String queueName = "topic-1"; //String queueName = "topic-1";
String queuenames = "";
private String[] queuenames = null;


@Autowired @Autowired
private AmqpAdmin amqpAdmin; private AmqpAdmin amqpAdmin;
@@ -30,10 +30,6 @@ public class RabbitMqConsumer extends MqBaseConsumer {
amqpAdmin.declareExchange(exchange); amqpAdmin.declareExchange(exchange);
amqpAdmin.declareQueue(queue); amqpAdmin.declareQueue(queue);
amqpAdmin.declareBinding(binding); amqpAdmin.declareBinding(binding);
queuenames = queuenames +","+topic.getCode();
}
if (queuenames.length()>0) {
queuenames = queuenames.substring(0, queuenames.length()-1);
} }
} }


@@ -46,11 +42,19 @@ public class RabbitMqConsumer extends MqBaseConsumer {


@Bean @Bean
public Queue fmRabbitmaQueue(){
return new Queue(queuenames,true);
public String[] fmRabbitmaQueues(){
if (null == queuenames) {
queuenames = new String[EnumMsgMqTopic.values().length];
int i = 0 ;
for (EnumMsgMqTopic topic: EnumMsgMqTopic.values()) {
queuenames[i] = topic.getCode();
i ++;
}
}
return queuenames;
} }
@RabbitListener(queues = "#{fmRabbitmaQueue.name}")
@RabbitListener(queues = {"#{fmRabbitmaQueues}"})
public void onMessage(String message) { public void onMessage(String message) {
doMessage(message); doMessage(message);
} }


Загрузка…
Отмена
Сохранить