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

Merge remote-tracking branch 'origin/aliyun_real_xhxu' into aliyun_real_xhxu

release_toaliyun_real
furunxin 5 лет назад
Родитель
Сommit
74d136da76
2 измененных файлов: 26 добавлений и 9 удалений
  1. +2
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/basic/WxProjectConfigController.java
  2. +24
    -9
      mallinkMQConsumer/src/main/java/com/iformall/mq/impl/RabbitMqConsumer.java

+ 2
- 0
mallinkAdmin/src/main/java/com/iformall/controller/basic/WxProjectConfigController.java Просмотреть файл

@@ -13,6 +13,7 @@ import com.iformall.enums.EnumUserAdmin;
import com.iformall.service.*; import com.iformall.service.*;
import com.iformall.shiro.PasswordHelper; import com.iformall.shiro.PasswordHelper;
import com.iformall.sms.EnumSMSChannel; import com.iformall.sms.EnumSMSChannel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
@@ -24,6 +25,7 @@ import org.springframework.web.bind.annotation.*;
import java.util.*; import java.util.*;


@RestController @RestController
@Api(description = "初始化相关接口")
@RequestMapping("wxProjectConfig") @RequestMapping("wxProjectConfig")
public class WxProjectConfigController extends BaseController { public class WxProjectConfigController extends BaseController {
private final Logger logger = LoggerFactory.getLogger(this.getClass()); private final Logger logger = LoggerFactory.getLogger(this.getClass());


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

@@ -1,10 +1,12 @@
package com.iformall.mq.impl; package com.iformall.mq.impl;


import com.iformall.mq.MqBaseConsumer; import com.iformall.mq.MqBaseConsumer;
import com.iformall.enums.EnumMsgMqTopic;
import com.iformall.mq.MQConfig; import com.iformall.mq.MQConfig;
import org.springframework.amqp.core.*; import org.springframework.amqp.core.*;
import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Profile; import org.springframework.context.annotation.Profile;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;


@@ -13,29 +15,42 @@ import javax.annotation.PostConstruct;
@Component @Component
@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 = "";


@Autowired @Autowired
private AmqpAdmin amqpAdmin; private AmqpAdmin amqpAdmin;


@PostConstruct @PostConstruct
public void init() { public void init() {
DirectExchange exchange = new DirectExchange(queueName);
Queue queue = new Queue(queueName);
Binding binding = BindingBuilder.bind(queue).to(exchange).withQueueName();
amqpAdmin.declareExchange(exchange);
amqpAdmin.declareQueue(queue);
amqpAdmin.declareBinding(binding);
for (EnumMsgMqTopic topic: EnumMsgMqTopic.values()) {
DirectExchange exchange = new DirectExchange(topic.getCode());
Queue queue = new Queue(topic.getCode());
Binding binding = BindingBuilder.bind(queue).to(exchange).withQueueName();
amqpAdmin.declareExchange(exchange);
amqpAdmin.declareQueue(queue);
amqpAdmin.declareBinding(binding);
queuenames = queuenames +","+topic.getCode();
}
if (queuenames.length()>0) {
queuenames = queuenames.substring(0, queuenames.length()-1);
}
} }


@Autowired @Autowired
private AmqpTemplate rabbitTemplate; private AmqpTemplate rabbitTemplate;


public void send(String msg) {
public void send(String queueName, String msg) {
rabbitTemplate.convertAndSend(queueName, msg); rabbitTemplate.convertAndSend(queueName, msg);
} }


@RabbitListener(queues = "topic-1")
@Bean
public Queue fmRabbitmaQueue(){
return new Queue(queuenames,true);
}
@RabbitListener(queues = "#{fmRabbitmaQueue.name}")
public void onMessage(String message) { public void onMessage(String message) {
doMessage(message); doMessage(message);
} }


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