lrf 8 月之前
父節點
當前提交
aa00555412

+ 38 - 0
src/main/java/com/free/controller/MqController.java

@@ -0,0 +1,38 @@
+package com.free.controller;
+
+import java.util.Map;
+import java.util.UUID;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.free.config.ResponseFormat;
+import com.free.mq.MqListeners;
+import com.free.mq.MqService;
+
+import io.swagger.annotations.Api;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
+@RestController
+@RequestMapping
+@Api(tags = "mq")
+public class MqController {
+  @Autowired
+  MqService mqService;
+
+  @PostMapping("/mq/send")
+  public Object mqSendTest(@RequestBody Map map) throws JsonProcessingException {
+    System.out.println(map);
+    String target_id = (String) map.get("target_id");
+    String queue = "chat." + target_id;
+    String messageId = String.valueOf(UUID.randomUUID());
+    map.put("id", messageId);
+    mqService.sendMsg(MqListeners.exName, queue, map);
+
+    return ResponseFormat.success();
+  }
+
+}

+ 6 - 4
src/main/java/com/free/controller/TestController.java

@@ -1,11 +1,12 @@
 package com.free.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.fasterxml.jackson.core.JsonProcessingException;
 import com.free.config.CustomizationException;
 import com.free.config.ExceptionEnum;
 import com.free.config.ResponseFormat;
 import com.free.entity.Test;
-import com.free.mq.MqListeners;
+import com.free.mq.MqService;
 import com.free.service.TestService;
 
 import org.springframework.amqp.rabbit.core.RabbitTemplate;
@@ -25,11 +26,12 @@ public class TestController {
   @Autowired
   private TestService testService;
 
+
   @Autowired
-  RabbitTemplate rabbitTemplate; // 使用RabbitTemplate,这提供了接收/发送等等方法
+  MqService mqService;
 
   @GetMapping("/mq/send")
-  public Object mqSendTest() {
+  public Object mqSendTest() throws JsonProcessingException {
     String messageId = String.valueOf(UUID.randomUUID());
     String messageData = "message: M A N ";
     String createTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
@@ -37,7 +39,7 @@ public class TestController {
     manMap.put("messageId", messageId);
     manMap.put("messageData", messageData);
     manMap.put("createTime", createTime);
-    rabbitTemplate.convertAndSend(MqListeners.exName, MqListeners.queueName + "1", manMap);
+    mqService.sendMsg("chatEx", "chat.1", manMap);
     return ResponseFormat.success();
   }
 

+ 1 - 1
src/main/java/com/free/mq/MqListeners.java

@@ -14,7 +14,7 @@ public class MqListeners {
   /** 队列名 */
   public final static String queueName = "chat";
   /** 路由匹配 */
-  public final static String routerMatch = queueName + ".#";
+  public final static String routerMatch = queueName + ".*";
 
   /** 声明队列 */
   @Bean

+ 21 - 0
src/main/java/com/free/mq/MqService.java

@@ -0,0 +1,21 @@
+package com.free.mq;
+
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+@Service
+public class MqService {
+  @Autowired
+  RabbitTemplate rabbitTemplate;
+
+  public void sendMsg(String ex, String queue, Object msg) throws JsonProcessingException {
+    String strMsg = null;
+    ObjectMapper mapper = new ObjectMapper();
+    strMsg = mapper.writeValueAsString(msg);
+    rabbitTemplate.convertAndSend(ex, queue, strMsg);
+  }
+}

+ 0 - 5
src/main/java/com/free/service/LoginService.java

@@ -1,5 +0,0 @@
-package com.free.service;
-
-public class LoginService {
-  
-}