2.4.6提交

This commit is contained in:
zer0Black
2022-04-05 22:07:12 +08:00
parent abe1f7467d
commit 8502471a05
113 changed files with 3031 additions and 721 deletions
@@ -5,7 +5,7 @@
<parent>
<artifactId>jero-boot-starter</artifactId>
<groupId>com.jero.boot</groupId>
<version>2.4.3</version>
<version>2.4.6</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>jero-boot-starter-rabbitmq</artifactId>
@@ -28,6 +28,7 @@ import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
/**
* 消息队列客户端
@@ -91,11 +92,16 @@ public class RabbitMqClient {
rabbitAdmin.declareExchange(directExchange);
if (ObjectUtil.isNotEmpty(queues)) {
for (String queueName : queues) {
Queue queue = new Queue(queueName);
addQueue(queue);
Binding binding = BindingBuilder.bind(queue).to(directExchange).with(queueName);
rabbitAdmin.declareBinding(binding);
log.info("队列创建成功:" + queueName);
Properties result = rabbitAdmin.getQueueProperties(queueName);
if (ObjectUtil.isEmpty(result)) {
Queue queue = new Queue(queueName);
addQueue(queue);
Binding binding = BindingBuilder.bind(queue).to(directExchange).with(queueName);
rabbitAdmin.declareBinding(binding);
log.info("创建队列:" + queueName);
}else{
log.info("已有队列:" + queueName);
}
}
}
}
@@ -1,7 +1,9 @@
package com.jero.boot.starter.rabbitmq.config;
import java.util.UUID;
import com.jero.boot.starter.rabbitmq.event.JeroRemoteApplicationEvent;
import com.jero.common.config.mqtoken.TransmitUserTokenFilter;
import org.springframework.amqp.core.AcknowledgeMode;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitAdmin;
@@ -11,8 +13,6 @@ import org.springframework.cloud.bus.jackson.RemoteApplicationEventScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.UUID;
/**
* 消息队列配置类
*
@@ -31,7 +31,14 @@ public class RabbitMqConfig {
return rabbitAdmin;
}
/**
* 注入获取token过滤器
* @return
*/
@Bean
public TransmitUserTokenFilter transmitUserInfoFromHttpHeader(){
return new TransmitUserTokenFilter();
}
@Bean
public SimpleMessageListenerContainer messageListenerContainer(ConnectionFactory connectionFactory) {
@@ -3,14 +3,18 @@ package com.jero.boot.starter.rabbitmq.core;
import com.rabbitmq.client.Channel;
import lombok.extern.slf4j.Slf4j;
import com.jero.boot.starter.rabbitmq.listenter.MqListener;
import com.jero.common.config.mqtoken.UserTokenContext;
import java.io.IOException;
@Slf4j
public class BaseRabbiMqHandler<T> {
private String token= UserTokenContext.getToken();
public void onMessage(T t, Long deliveryTag, Channel channel, MqListener mqListener) {
try {
UserTokenContext.setToken(token);
mqListener.handler(t, channel);
channel.basicAck(deliveryTag, false);
} catch (Exception e) {