Merge remote-tracking branch 'origin/feature-BOX一期' into feature-BOX一期

This commit is contained in:
weiyachao 2023-09-25 18:02:31 +08:00
commit 3ea74a8c44
6 changed files with 68 additions and 0 deletions

View File

@ -34,6 +34,13 @@
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis-reactive</artifactId>

View File

@ -4,6 +4,7 @@ import cn.hutool.core.util.ObjectUtil;
import com.qiuguo.iot.data.entity.user.UserRoomEntity;
import com.qiuguo.iot.data.request.user.UserRoomRequest;
import com.qiuguo.iot.data.service.user.UserRoomService;
import com.qiuguo.iot.user.api.rabbit.MyProducer;
import lombok.extern.slf4j.Slf4j;
import org.hswebframework.web.api.crud.entity.PagerResult;
import org.springframework.web.bind.annotation.*;
@ -23,6 +24,9 @@ public class RoomAdminController {
@Resource
private UserRoomService roomService;
@Resource
private MyProducer myProducer;
//新增
@PostMapping("/save/room")
public Mono<Void> roomSave(@RequestBody UserRoomEntity room) {
@ -52,4 +56,10 @@ public class RoomAdminController {
public Mono<PagerResult<UserRoomEntity>> getFamily(@RequestBody UserRoomRequest resp) {
return roomService.selectUserRoomsByRequest(resp);
}
@GetMapping("/text")
public String text() {
myProducer.sendMessage("hello world");
return "hello world";
}
}

View File

@ -0,0 +1,14 @@
package com.qiuguo.iot.user.api.rabbit;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;
@Component
public class MyConsumer {
@RabbitListener(queues = "my-queue")
public void receiveMessage(String message) {
// 处理接收到的消息
System.out.println("Received message: " + message);
}
}

View File

@ -0,0 +1,17 @@
package com.qiuguo.iot.user.api.rabbit;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class MyProducer {
@Autowired
private RabbitTemplate rabbitTemplate;
public void sendMessage(String message) {
//发送消息
rabbitTemplate.convertAndSend("my-queue", message);
}
}

View File

@ -0,0 +1,14 @@
package com.qiuguo.iot.user.api.rabbit;
import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class RabbitMQConfig {
@Bean
public Queue myQueue() {
return new Queue("my-queue");
}
}

View File

@ -1,4 +1,10 @@
spring:
rabbitmq:
host: 192.168.8.146
port: 31043
username: admin
password: 123456
cloud:
# config:
# # 如果本地配置优先级高,那么 override-none 设置为 true包括系统环境变量、本地配置文件等配置