添加RabbitMQ

cert
anthonywj 2 years ago
parent c2a1d53180
commit b2bb3930e9

@ -365,6 +365,13 @@
<artifactId>knife4j-spring-boot-starter</artifactId> <artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.9</version> <version>2.0.9</version>
</dependency> </dependency>
<!--rabbitmq-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
</dependencies> </dependencies>
<build> <build>

@ -0,0 +1,43 @@
package com.glxp.api.config.rabbit;
import org.springframework.amqp.core.Binding;
import org.springframework.amqp.core.BindingBuilder;
import org.springframework.amqp.core.Queue;
import org.springframework.amqp.core.TopicExchange;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class TopicRabbitConfig {
//绑定键
public final static String common = "topic.common";
public final static String trace = "topic.trace";
@Bean
public Queue firstQueue() {
return new Queue(TopicRabbitConfig.trace);
}
@Bean
public Queue secondQueue() {
return new Queue(TopicRabbitConfig.common);
}
@Bean
TopicExchange exchange() {
return new TopicExchange("topicExchange");
}
@Bean
Binding bindingExchangeMessage() {
return BindingBuilder.bind(firstQueue()).to(exchange()).with(trace);
}
@Bean
Binding bindingExchangeMessage2() {
return BindingBuilder.bind(secondQueue()).to(exchange()).with("topic.#");
}
}

@ -0,0 +1,51 @@
package com.glxp.api.controller.trace;
import cn.hutool.core.lang.UUID;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.config.rabbit.TopicRabbitConfig;
import com.glxp.api.util.DateUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@RestController
@RequiredArgsConstructor
public class TestController {
@Resource
private final RabbitTemplate rabbitTemplate;
@GetMapping("/sendUdi")
public BaseResponse sendUdi(String key) {
String messageId = String.valueOf(UUID.randomUUID());
Map<String, Object> messageMap = new HashMap<>();
messageMap.put("messageId", messageId);
messageMap.put("messageData", key);
messageMap.put("createTime", DateUtil.formatDate(new Date()));
rabbitTemplate.convertAndSend("topicExchange", TopicRabbitConfig.trace, messageMap);
return ResultVOUtils.success("发送成功");
}
@GetMapping("/sendCommon")
public BaseResponse sendCommon(String key) {
String messageId = String.valueOf(UUID.randomUUID());
Map<String, Object> messageMap = new HashMap<>();
messageMap.put("messageId", messageId);
messageMap.put("messageData", key);
messageMap.put("createTime", DateUtil.formatDate(new Date()));
rabbitTemplate.convertAndSend("topicExchange", TopicRabbitConfig.common, messageMap);
return ResultVOUtils.success("发送成功");
}
}

@ -1,18 +1,13 @@
package com.glxp.api.controller.trace; package com.glxp.api.controller.trace;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController; import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.DeptEntity;
import com.glxp.api.entity.sup.UserCompanyEntity;
import com.glxp.api.req.auth.FilterUserComapanyRequest;
import com.glxp.api.req.trace.TraceRecordRequest; import com.glxp.api.req.trace.TraceRecordRequest;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.trace.TraceRecordResponse; import com.glxp.api.res.trace.TraceRecordResponse;
import com.glxp.api.service.sup.UserCompanyService;
import com.glxp.api.service.trace.TraceRecordService; import com.glxp.api.service.trace.TraceRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@ -44,5 +39,4 @@ public class TraceRecordController extends BaseController {
} }
} }

@ -33,6 +33,15 @@ spring:
max-file-size: 500MB max-file-size: 500MB
max-request-size: 500MB max-request-size: 500MB
rabbitmq:
host: 127.0.0.1
port: 5672
username: cpt
password: 123456
virtual-host: /
publisher-confirms: false
connection-timeout: 15000
ok: ok:
http: http:
connect-timeout: 3000 connect-timeout: 3000

Loading…
Cancel
Save