本项目需要根据前端传递的tenantId进行动态生成名字为device-{tenantId}
使用的是
@Bean
public RabbitAdmin rabbitAdmin(ConnectionFactory connectionFactory){
return new RabbitAdmin(connectionFactory);
}
@Component
public class MQSend {
@Autowired
private RabbitAdmin rabbitAdmin;
@Autowired
private RabbitTemplate rabbitTemplate;
public void sendMsg(Long tenantId){
rabbitAdmin.declareBinding(BindingBuilder.bind(new Queue("device-iot-send-"+tenantId)).to(new DirectExchange("device-iot-send-"+tenantId)).with("device-iot-send-"+tenantId));
rabbitTemplate.convertAndSend("device-iot-send-"+tenantId,"你好");
}
}
上述代码进行动态生成队列
项目地址:https://gitee.com/qingyaoyuanyin/rabbitmq-dynamic.git