mirror of
				https://github.com/YunaiV/ruoyi-vue-pro.git
				synced 2025-10-31 10:37:41 +08:00 
			
		
		
		
	【代码优化】IoT: 数据桥梁的执行器根据引入的消息队列动态加载
This commit is contained in:
		| @ -6,6 +6,7 @@ import cn.iocoder.yudao.module.iot.mq.message.IotDeviceMessage; | |||||||
| import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||||
| import org.apache.kafka.clients.producer.ProducerConfig; | import org.apache.kafka.clients.producer.ProducerConfig; | ||||||
| import org.apache.kafka.common.serialization.StringSerializer; | import org.apache.kafka.common.serialization.StringSerializer; | ||||||
|  | import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; | ||||||
| import org.springframework.kafka.core.DefaultKafkaProducerFactory; | import org.springframework.kafka.core.DefaultKafkaProducerFactory; | ||||||
| import org.springframework.kafka.core.KafkaTemplate; | import org.springframework.kafka.core.KafkaTemplate; | ||||||
| import org.springframework.stereotype.Component; | import org.springframework.stereotype.Component; | ||||||
| @ -21,6 +22,7 @@ import java.util.concurrent.TimeUnit; | |||||||
|  * |  * | ||||||
|  * @author HUIHUI |  * @author HUIHUI | ||||||
|  */ |  */ | ||||||
|  | @ConditionalOnClass(KafkaTemplate.class) | ||||||
| @Component | @Component | ||||||
| @Slf4j | @Slf4j | ||||||
| public class IotKafkaMQDataBridgeExecute extends | public class IotKafkaMQDataBridgeExecute extends | ||||||
|  | |||||||
| @ -7,6 +7,7 @@ import com.rabbitmq.client.Channel; | |||||||
| import com.rabbitmq.client.Connection; | import com.rabbitmq.client.Connection; | ||||||
| import com.rabbitmq.client.ConnectionFactory; | import com.rabbitmq.client.ConnectionFactory; | ||||||
| import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||||
|  | import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; | ||||||
| import org.springframework.stereotype.Component; | import org.springframework.stereotype.Component; | ||||||
|  |  | ||||||
| import java.nio.charset.StandardCharsets; | import java.nio.charset.StandardCharsets; | ||||||
| @ -17,6 +18,7 @@ import java.time.LocalDateTime; | |||||||
|  * |  * | ||||||
|  * @author HUIHUI |  * @author HUIHUI | ||||||
|  */ |  */ | ||||||
|  | @ConditionalOnClass(Channel.class) | ||||||
| @Component | @Component | ||||||
| @Slf4j | @Slf4j | ||||||
| public class IotRabbitMQDataBridgeExecute extends | public class IotRabbitMQDataBridgeExecute extends | ||||||
|  | |||||||
| @ -9,6 +9,7 @@ import org.apache.rocketmq.client.producer.SendResult; | |||||||
| import org.apache.rocketmq.client.producer.SendStatus; | import org.apache.rocketmq.client.producer.SendStatus; | ||||||
| import org.apache.rocketmq.common.message.Message; | import org.apache.rocketmq.common.message.Message; | ||||||
| import org.apache.rocketmq.remoting.common.RemotingHelper; | import org.apache.rocketmq.remoting.common.RemotingHelper; | ||||||
|  | import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; | ||||||
| import org.springframework.stereotype.Component; | import org.springframework.stereotype.Component; | ||||||
|  |  | ||||||
| import java.time.LocalDateTime; | import java.time.LocalDateTime; | ||||||
| @ -18,6 +19,7 @@ import java.time.LocalDateTime; | |||||||
|  * |  * | ||||||
|  * @author HUIHUI |  * @author HUIHUI | ||||||
|  */ |  */ | ||||||
|  | @ConditionalOnClass(DefaultMQProducer.class) | ||||||
| @Component | @Component | ||||||
| @Slf4j | @Slf4j | ||||||
| public class IotRocketMQDataBridgeExecute extends | public class IotRocketMQDataBridgeExecute extends | ||||||
|  | |||||||
| @ -114,6 +114,19 @@ | |||||||
|             <artifactId>yudao-module-iot-biz</artifactId> |             <artifactId>yudao-module-iot-biz</artifactId> | ||||||
|             <version>${revision}</version> |             <version>${revision}</version> | ||||||
|         </dependency> |         </dependency> | ||||||
|  |         <!-- IoT 数据桥梁的执行器所需消息队列。如果您只需要使用 rocketmq 那么则注释掉其它消息队列即可 --> | ||||||
|  |         <dependency> | ||||||
|  |             <groupId>org.apache.rocketmq</groupId> | ||||||
|  |             <artifactId>rocketmq-spring-boot-starter</artifactId> | ||||||
|  |         </dependency> | ||||||
|  |         <dependency> | ||||||
|  |             <groupId>org.springframework.kafka</groupId> | ||||||
|  |             <artifactId>spring-kafka</artifactId> | ||||||
|  |         </dependency> | ||||||
|  |         <dependency> | ||||||
|  |             <groupId>org.springframework.boot</groupId> | ||||||
|  |             <artifactId>spring-boot-starter-amqp</artifactId> | ||||||
|  |         </dependency> | ||||||
|  |  | ||||||
|         <!-- spring boot 配置所需依赖 --> |         <!-- spring boot 配置所需依赖 --> | ||||||
|         <dependency> |         <dependency> | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 puhui999
					puhui999