spring boot配置多rabbitMQ

因为在项目中,有可能会用到多套RabbitMQ,如果只用一套那则用SpringBoot自带的配置就可以了,但多套则不行,需要自行配置。以下为本人自己总结的配置。

发现了一个更好的配置多套rabbitMQ的方式

1.application.yml
spring:
    rabbitmq:
      hospSync:
        host: localhost
        port: 5672
        username: test
        password: test
        virtual-host: test
      pay:
        host: localhost
        port: 5672
        username: demo
        password: demo
        virtual-host: demo
2.配置mq
package com.medrd.hpay.config;

import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;

@Configuration
public class RabbitMqConfiguration{

    @Bean(name="hospSyncConnectionFactory")
    @Primary
    public ConnectionFactory hospSyncConnectionFactory(
            @Value("${spring.rabbitmq.hospSync.host}") String host,
            @Value("${spring.rabbitmq.hospSync.port}") int port,
            @Value("${spring.rabbitmq.hospSync.username}") String username,
            @Value("${spring.rabbitmq.hospSync.password}") String password,
            @Value("${spring.rabbitmq.hospSync.virtual-host}") String virtualHost){
        CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
        connectionFactory.setHost(host);
        connectionFactory.setPort(port);
        connectionFactory.setUsername(username);
        connectionFactory.setPassword(password);
        connectionFactory.setVirtualHost(virtualHost);

        return connectionFactory;
    }

    @Bean(name="hPayConnectionFactory")
    public ConnectionFactory hPayConnectionFactory(
            @Value("${spring.rabbitmq.pay.host}") String host,
            @Value("${spring.rabbitmq.pay.port}") int port,
            @Value("${spring.rabbitmq.pay.username}") String username,
            @Value("${spring.rabbitmq.pay.password}") String password,
            @Value("${spring.rabbitmq.pay.virtual-host}") String virtualHost){
        CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
        connectionFactory.setHost(host);
        connectionFactory.setPort(port);
        connectionFactory.setUsername(username);
        connectionFactory.setPassword(password);
        connectionFactory.setVirtualHost(virtualHost);
        return connectionFactory;
    }

    @Bean(name="hospSyncRabbitTemplate")
//    @Primary
    public RabbitTemplate firstRabbitTemplate(
            @Qualifier("hospSyncConnectionFactory") ConnectionFactory connectionFactory
    ){
        RabbitTemplate hospSyncRabbitTemplate = new RabbitTemplate(connectionFactory);
        //使用外部事物
        //ydtRabbitTemplate.setChannelTransacted(true);
        return hospSyncRabbitTemplate;
    }

    @Bean(name="hPayRabbitTemplate")
    @Primary
    public RabbitTemplate secondRabbitTemplate(
            @Qualifier("hPayConnectionFactory") ConnectionFactory connectionFactory
    ){
        RabbitTemplate hPayRabbitTemplate = new RabbitTemplate(connectionFactory);
        //使用外部事物
        //lpzRabbitTemplate.setChannelTransacted(true);
        return hPayRabbitTemplate;
    }

        @Bean(name="hospSyncContainerFactory")
    public SimpleRabbitListenerContainerFactory hospSyncFactory(
            SimpleRabbitListenerContainerFactoryConfigurer configurer,
            @Qualifier("hospSyncConnectionFactory") ConnectionFactory connectionFactory
    ) {
        SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
        configurer.configure(factory, connectionFactory);
        return factory;
    }


    @Bean(name="hPayContainerFactory")
    public SimpleRabbitListenerContainerFactory hPayFactory(
            SimpleRabbitListenerContainerFactoryConfigurer configurer,
            @Qualifier("hPayConnectionFactory") ConnectionFactory connectionFactory
    ) {
        SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
        configurer.configure(factory, connectionFactory);
        return factory;
    }

}


3.监听(消费方)

package com.medrd.hpay.domain;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.messaging.handler.annotation.Header;
import org.springframework.stereotype.Component;

@Component
public class RabbitMqMessage {

    private static final Logger logger = LoggerFactory.getLogger(RabbitMqMessage.class);

    @RabbitListener(queues = {"test.hospital.add","test.hospital.update","test.hospital.delete"}, containerFactory="hospSyncContainerFactory")
    public void hospitalAdd(@Header("amqp_receivedRoutingKey") String routeKey, Object data) {
        logger.debug("Reciver routeKey: {}, data: {}", data);
    }

    @RabbitListener(queues = {"demo.add","demo.update"}, containerFactory="hPayContainerFactory")
    public void hPayAdd(@Header("amqp_receivedRoutingKey") String routeKey, String data) {
        System.out.println(data);
        System.out.println();
    }


}
4.生产者(消息生产方

package com.paas.springboot.demo01;
 
import java.util.Date;
import javax.annotation.Resource;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Component;
 
@Component
public class Sender {
 
    @Resource(name="hospSyncRabbitTemplate")
    private RabbitTemplate hospSyncRabbitTemplate;
 
    public void send1() {
        String context = "hello1 " + new Date();
        System.out.println("Sender : " + context);
        this.firstRabbitTemplate.convertAndSend("test.hospital.add", context);
    }
 
    public void send2() {
        String context = "hello2 " + new Date();
        System.out.println("Sender : " + context);
        this.firstRabbitTemplate.convertAndSend("test.hospital.add", context);
    }
 
}

5.配置文件

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

引自:https://blog.csdn.net/qq_37608766/article/details/80912370

========================================================

下面是我自己研究的,感觉上面的更好,要不断进步和优化  嘿嘿

场景:现有first 、second俩个RabbitMQ  监听first的消息,处理完毕发送到second中,再监听second

package com.daling.message_center.cofig;


import org.springframework.amqp.core.*;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.amqp.rabbit.core.RabbitAdmin;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import org.springframework.boot.autoconfigure.amqp.SimpleRabbitListenerContainerFactoryConfigurer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.context.annotation.Scope;
import org.springframework.retry.backoff.BackOffPolicy;
import org.springframework.retry.backoff.ExponentialBackOffPolicy;
import org.springframework.retry.support.RetryTemplate;

@Configuration
public class RabbitMQConfigTest {

    public static final String topicExchangeName = "test-topic-exchange";
    public static final String fanoutExchange = "public_message_exchange";
    public static final String headersExchange = "test-headers-exchange";

    /*ConnectionFactory*/
    @Bean(name="firstConnectionFactory")
    @Primary
    public ConnectionFactory firstConnectionFactory(
            @Value("${spring.rabbitmq.first.host}") String host,
            @Value("${spring.rabbitmq.first.port}") int port,
            @Value("${spring.rabbitmq.first.username}") String username,
            @Value("${spring.rabbitmq.first.password}") String password,
            @Value("${spring.rabbitmq.first.virtual-host}") String virtualHost,
            @Value("${spring.rabbitmq.first.publisher-confirms}") Boolean confirm
    ){
        CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
        connectionFactory.setHost(host);
        connectionFactory.setPort(port);
        connectionFactory.setUsername(username);
        connectionFactory.setPassword(password);
        connectionFactory.setPublisherConfirms(confirm);
        connectionFactory.setVirtualHost(virtualHost);
        return connectionFactory;
    }

    @Bean(name="secondConnectionFactory")
    public ConnectionFactory secondConnectionFactory(
            @Value("${spring.rabbitmq.second.host}") String host,
            @Value("${spring.rabbitmq.second.port}") int port,
            @Value("${spring.rabbitmq.second.username}") String username,
            @Value("${spring.rabbitmq.second.password}") String password,
            @Value("${spring.rabbitmq.second.virtual-host}") String virtualHost,
            @Value("${spring.rabbitmq.second.publisher-confirms}") Boolean confirm
    ){
        CachingConnectionFactory connectionFactory = new CachingConnectionFactory();
        connectionFactory.setHost(host);
        connectionFactory.setPort(port);
        connectionFactory.setUsername(username);
        connectionFactory.setPassword(password);
        connectionFactory.setPublisherConfirms(confirm);
        connectionFactory.setVirtualHost(virtualHost);
        return connectionFactory;
    }


    /*RabbitAdmin*/

    /**
     * 声明RabbitAdmin
     */
    @Bean(name = "firstRabbitAdmin")
    public RabbitAdmin firstRabbitAdmin(@Qualifier("firstConnectionFactory") ConnectionFactory firstConnectionFactory){
        return new RabbitAdmin(firstConnectionFactory);
    }

    /**
     * 声明RabbitAdmin
     */
    @Bean(name = "secondRabbitAdmin")
    public RabbitAdmin secondRabbitAdmin(@Qualifier("secondConnectionFactory") ConnectionFactory secondConnectionFactory){
        return new RabbitAdmin(secondConnectionFactory);
    }

    /*RabbitTemplate*/
    @Bean(name="firstRabbitTemplate")
    @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
    @Primary
    public RabbitTemplate firstRabbitTemplate(
            @Qualifier("firstConnectionFactory") ConnectionFactory connectionFactory
    ){
        RabbitTemplate firstRabbitTemplate = new RabbitTemplate(connectionFactory);
        return firstRabbitTemplate;
    }

    @Bean(name="secondRabbitTemplate")
    @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE)
    public RabbitTemplate secondRabbitTemplate(
            @Qualifier("secondConnectionFactory") ConnectionFactory connectionFactory,
            @Qualifier("secondRetryTemplate") RetryTemplate retryTemplate
    ){
        System.out.println("configuration secondRabbitTemplate ........................");
        RabbitTemplate secondRabbitTemplate = new RabbitTemplate(connectionFactory);
        secondRabbitTemplate.setExchange("fanout-exchange-msg_box");
        secondRabbitTemplate.setRetryTemplate(retryTemplate);
        return secondRabbitTemplate;
    }

    /*SimpleRabbitListenerContainerFactory*/
    @Bean(name="firstFactory")
    public SimpleRabbitListenerContainerFactory firstFactory(
            SimpleRabbitListenerContainerFactoryConfigurer configurer,
            @Qualifier("firstConnectionFactory") ConnectionFactory connectionFactory
    ) {
        SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
        configurer.configure(factory, connectionFactory);
        return factory;
    }

    @Bean(name="secondFactory")
    public SimpleRabbitListenerContainerFactory secondFactory(
            SimpleRabbitListenerContainerFactoryConfigurer configurer,
            @Qualifier("secondConnectionFactory") ConnectionFactory connectionFactory
    ) {
        SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory();
        configurer.configure(factory, connectionFactory);
        return factory;
    }

    /*Queue*/
    @Bean(name = "msg_center_queue")
    public Queue msgCenterQueue() {
        System.out.println("configuration msg_center_queue ........................");
        return new Queue("msg_center_queue");
    }

    @Bean(name = "msg_box_queue")
    public Queue msgBoxQueue() {
        System.out.println("configuration msg_box_queue ........................");
        return new Queue("msg_box_queue_test");
    }

    /*Exchange*/
    @Bean(name = "firstFanoutExchange")
    public FanoutExchange firstfanoutExchange(@Qualifier("firstRabbitAdmin") RabbitAdmin rabbitAdmin) {
        System.out.println("configuration firstExchange ........................");
        FanoutExchange fanoutExchange = new FanoutExchange(RabbitMQConfigTest.fanoutExchange);
        rabbitAdmin.declareExchange(fanoutExchange);
        boolean fula = fanoutExchange.isAutoDelete();
        return fanoutExchange;
    }

    @Bean(name = "secondFanoutExchange")
    public FanoutExchange secondfanoutExchange(@Qualifier("secondRabbitAdmin") RabbitAdmin rabbitAdmin) {
        System.out.println("configuration secondExchange ........................");
        FanoutExchange fanoutExchange = new FanoutExchange("fanout-exchange-msg_box");
        rabbitAdmin.declareExchange(fanoutExchange);
        fanoutExchange.isAutoDelete();
        return fanoutExchange;
    }

    @Bean
    public TopicExchange topicExchange() {
        return new TopicExchange(topicExchangeName);
    }

    @Bean
    public HeadersExchange headersExchange() {
        return new HeadersExchange(headersExchange);
    }

    /*Binding*/
//    @Bean
//    public Binding msgCenterQueueBinding() {
//        return BindingBuilder.bind(firstQueue()).to(fanoutExchange(@Qualifier("firstRabbitAdmin") RabbitAdmin));
//    }

    /**
     * 绑定queue与exchange
     */
    @Bean
    public Binding binding1(@Qualifier("msg_center_queue") Queue msgCenterQueue, @Qualifier("firstFanoutExchange") FanoutExchange fanoutExchange) {
        return BindingBuilder.bind(msgCenterQueue).to(fanoutExchange);
    }


    @Bean//测试用
    public Binding binding2(@Qualifier("msg_box_queue") Queue msgBoxQueue, @Qualifier("secondFanoutExchange") FanoutExchange fanoutExchange) {
        return BindingBuilder.bind(msgBoxQueue).to(fanoutExchange);
    }

    /**
     * 声明MessageListenerContainer
     */
    @Bean(name = "centerListenerContainerFactory")
    public SimpleMessageListenerContainer insMessageListenerContainer(@Qualifier("msg_center_queue") Queue testQuene,
                                                                      @Qualifier("firstConnectionFactory") ConnectionFactory firstConnectionFactory,
                                                                      @Qualifier("commonMessageListener") MessageListener commonMessageListener) {

        SimpleMessageListenerContainer messageListenerContainer = new SimpleMessageListenerContainer();
        messageListenerContainer.setConnectionFactory(firstConnectionFactory);
        messageListenerContainer.addQueues(testQuene);
        messageListenerContainer.setAcknowledgeMode(AcknowledgeMode.AUTO);
        messageListenerContainer.setMessageListener(commonMessageListener);
        return messageListenerContainer;
    }

    @Bean(name = "boxListenerContainerFactory")//测试用(自己发自己接收)
    public SimpleMessageListenerContainer insMessageListenerContainer2(@Qualifier("msg_box_queue") Queue testQuene,
                                                                      @Qualifier("secondConnectionFactory") ConnectionFactory secondConnectionFactory,
                                                                      @Qualifier("boxMessageListener") MessageListener boxMessageListener) {

        SimpleMessageListenerContainer messageListenerContainer = new SimpleMessageListenerContainer();
        messageListenerContainer.setConnectionFactory(secondConnectionFactory);
        messageListenerContainer.addQueues(testQuene);
        messageListenerContainer.setAcknowledgeMode(AcknowledgeMode.AUTO);
        messageListenerContainer.setMessageListener(boxMessageListener);
        return messageListenerContainer;
    }

    /**
     * Retry策略Bean
     * @return
     */
    @Bean(name = "secondRetryTemplate")
    public RetryTemplate secondRetryTemplate(@Qualifier("secondBackOffPolicy") BackOffPolicy policy){
        System.out.println("configuration secondRetryTemplate ........................");
        RetryTemplate retryTemplate = new RetryTemplate();
        retryTemplate.setBackOffPolicy(policy);
        return retryTemplate;
    }

    @Bean(name = "secondBackOffPolicy")
    public BackOffPolicy secondBackOffPolicy() {
        System.out.println("configuration secondBackOffPolicy ........................");
        ExponentialBackOffPolicy policy = new ExponentialBackOffPolicy();
        policy.setInitialInterval(500);
        policy.setMultiplier(2.0);
        policy.setMaxInterval(10000);
        return policy;
    }

}

监听器fist
package com.daling.message_center.service.rabbitmq.listners;

import com.daling.message_center.service.processor.IMsgCenterListenerAssembly;
import com.daling.message_center.util.LoggerHelp;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.io.UnsupportedEncodingException;

@Component
public class CommonMessageListener implements MessageListener {

    @Autowired
    private IMsgCenterListenerAssembly iMsgCenterListenerAssembly;

    static {
        LoggerHelp.setLog(LoggerHelp.rabbitmq);
    }

    @Override
    public void onMessage(Message message) {

        String eventStr = new String(message.getBody());
        String msg = null;
        try {
            msg = new String(eventStr.getBytes(), "utf-8");
        } catch (UnsupportedEncodingException e) {
            LoggerHelp.getLog().error("error", e);
        }

        LoggerHelp.getLog().info("===============msg:{}", msg);
        iMsgCenterListenerAssembly.assembly(msg);
    }
}
监听器second
package com.daling.message_center.service.rabbitmq.listners;

import com.daling.message_center.util.LoggerHelp;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageListener;
import org.springframework.stereotype.Component;

import java.io.UnsupportedEncodingException;

@Component
public class boxMessageListener implements MessageListener {
    @Override
    public void onMessage(Message message) {
        String eventStr = new String(message.getBody());
        String msg = null;
        try {
            msg = new String(eventStr.getBytes(), "utf-8");
        } catch (UnsupportedEncodingException e) {
            LoggerHelp.getLog().error("error", e);
        }
        LoggerHelp.getLog().info("===============msg:{}", msg);
        System.out.println("监听的信息==="+msg.toString());
    }
}

//向second  RabbitMQ发送消息

package com.daling.message_center.service.rabbitmq.senders;

import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;

import java.util.concurrent.CompletableFuture;

@Component
public class MsgCenterSender {

    @Autowired
    @Qualifier("secondRabbitTemplate")
    private AmqpTemplate secondRabbitTemplate;

    public CompletableFuture<Void> sendToBox(String msg){
            secondRabbitTemplate.convertAndSend(msg);
        return CompletableFuture.completedFuture(null);
    }
}

 

参考:https://my.oschina.net/woter/blog/1843401  和本人实际项目配置完成

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Spring Boot 配置 RabbitMQ 的步骤如下: 1. 安装 RabbitMQ 服务器,可以在官网下载安装,也可以使用 Docker 容器来运行 RabbitMQ。 2. 在项目中添加依赖,可以在 pom.xml 中添加以下内容: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> ``` 3. 在 application.properties 或者 application.yml 文件中配置 RabbitMQ 相关的参数,例如: ``` spring.rabbitmq.host=127.0.0.1 spring.rabbitmq.port=5672 spring.rabbitmq.username=guest spring.rabbitmq.password=guest ``` 4. 创建一个消息生产者类,实现向 RabbitMQ 发送消息。 5. 创建一个消息消费者类,实现从 RabbitMQ 接收消息。 6. 在 Spring Boot 启动类中添加 @EnableRabbit 注解,以启用 RabbitMQ 的相关配置。 7. 运行项目,检查 RabbitMQ 是否能够正常收发消息。 以上是 Spring Boot 配置 RabbitMQ 的大致步骤,详细内容可以参考官方文档或者相关教程。 ### 回答2: Spring Boot是一个开源的Java开发框架,它简化了基于Spring框架的应用程序的开发和配置RabbitMQ是一个可靠的消息队列服务,用于异步通信和解耦应用程序的组件。 要在Spring Boot配置RabbitMQ,首先需要添加相应的依赖。在pom.xml文件中,引入以下依赖项: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> ``` 完成依赖配置后,我们可以在Spring Boot应用程序的配置文件(application.properties或application.yml)中添加RabbitMQ的相关配置。下面是一些常见的配置示例: ``` spring.rabbitmq.host=localhost # RabbitMQ服务器的主机地址 spring.rabbitmq.port=5672 # RabbitMQ服务器的端口号 spring.rabbitmq.username=guest # RabbitMQ登录用户名 spring.rabbitmq.password=guest # RabbitMQ登录密码 ``` 除了上面的配置,还有其他一些可选的配置项,如虚拟主机(virtual host)、路由键(routing key)等。根据具体需求,可以按需进行配置。 在应用程序中使用RabbitMQ时,可以使用Spring Boot提供的注解来简化代码。例如,使用`@RabbitListener`注解来声明一个接收消息的方法,使用`@EnableRabbit`注解来启用RabbitMQ功能。 以下是一个简单的示例: ```java @Component @RabbitListener(queues = "myQueue") public class MyMessageListener { @RabbitHandler public void handleMessage(String message) { System.out.println("Received: " + message); } } ``` 上述代码将声明一个名为`myQueue`的队列,并使用`handleMessage`方法来处理接收到的消息。当有消息发送到`myQueue`队列时,`handleMessage`方法将被调用。 这就是使用Spring Boot配置RabbitMQ的基本步骤。通过添加相关依赖,配置RabbitMQ的主机、端口、用户名和密码等信息,然后使用相应注解来处理消息的接收和处理逻辑。这样可以简化我们在Spring Boot应用程序中使用RabbitMQ的流程。 ### 回答3: Spring Boot配置RabbitMQ可以通过以下步骤完成: 1. 添加RabbitMQ依赖:首先,在项目的pom.xml文件中,添加以下依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> ``` 这样可以使用Spring Boot提供的自动配置来集成RabbitMQ。 2. 配置RabbitMQ连接信息:在项目的application.properties或application.yml文件中,添加RabbitMQ连接信息,如下所示: ```yaml spring.rabbitmq.host=localhost spring.rabbitmq.port=5672 spring.rabbitmq.username=guest spring.rabbitmq.password=guest ``` 这里设置了RabbitMQ服务器的主机名、端口号、用户名和密码。你可以根据实际情况进行修改。 3. 创建RabbitMQ消息队列:在需要使用RabbitMQ的地方,使用`@RabbitListener`和`@RabbitHandler`注解来创建消息队列,如下所示: ```java @Component @RabbitListener(queues = "myQueue") public class MyMessageListener { @RabbitHandler public void handleMessage(String message) { // 处理收到的消息 } } ``` 这个示例创建了一个名为"myQueue"的消息队列,并使用`MyMessageListener`类来监听该队列,并在收到消息时调用`handleMessage`方法进行处理。 4. 发送消息:在需要发送消息的地方,通过注入`AmqpTemplate`对象来发送消息,如下所示: ```java @Autowired private AmqpTemplate amqpTemplate; public void send(String message) { amqpTemplate.convertAndSend("myQueue", message); } ``` 这里使用`convertAndSend`方法将消息发送到名为"myQueue"的消息队列中。 这样,你就完成了Spring Boot配置RabbitMQ的过程。可以通过监听和发送消息来实现你的业务逻辑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值