springboot项目 rabbitMq 自定义监听类/消费者开启或关闭

1.找到监听类

[外链图片转存失败(img-wAZe2mSS-1564725897266)(evernotecid://BB49B1B7-6D9B-4EF6-B2AB-494DC974F221/appyinxiangcom/25683254/ENResource/p29)]

代码:

@RabbitListener(queues = "suggest_complaint_wechat",autoStartup= "false",id = "1111")
2.在测试类中

[外链图片转存失败(img-VBkIoiH3-1564725897267)(evernotecid://BB49B1B7-6D9B-4EF6-B2AB-494DC974F221/appyinxiangcom/25683254/ENResource/p31)]

代码:

 @Autowired
    private RabbitListenerEndpointRegistry rabbitListenerEndpointRegistry;
    @Test
    public void rabbitMqListenerStartAndStopTest(){
        //1.获取监听的容器
        MessageListenerContainer container = rabbitListenerEndpointRegistry.getListenerContainer("1111");
        //2.开启容器
        if(!container.isRunning()){
            container.start();
            System.out.println("开启容器");
        }

    }
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
好的,我可以为您提供一些关于Spring Boot集成RabbitMQ的信息。 首先,您需要在pom.xml文件中添加以下依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> ``` 然后在application.properties文件中添加以下配置: ```properties spring.rabbitmq.host=localhost spring.rabbitmq.port=5672 spring.rabbitmq.username=guest spring.rabbitmq.password=guest ``` 接下来,您可以创建一个RabbitMQ配置,如下所示: ```java @Configuration public class RabbitMQConfig { @Value("${spring.rabbitmq.host}") private String host; @Value("${spring.rabbitmq.port}") private int port; @Value("${spring.rabbitmq.username}") private String username; @Value("${spring.rabbitmq.password}") private String password; @Bean public ConnectionFactory connectionFactory() { CachingConnectionFactory connectionFactory = new CachingConnectionFactory(); connectionFactory.setHost(host); connectionFactory.setPort(port); connectionFactory.setUsername(username); connectionFactory.setPassword(password); return connectionFactory; } @Bean public RabbitTemplate rabbitTemplate() { return new RabbitTemplate(connectionFactory()); } @Bean public SimpleMessageListenerContainer messageListenerContainer() { SimpleMessageListenerContainer container = new SimpleMessageListenerContainer(); container.setConnectionFactory(connectionFactory()); container.setQueueNames("myQueue"); container.setMessageListener(new MyMessageListener()); return container; } } ``` 这个配置中,我们首先使用@Value注解读取application.properties文件中的RabbitMQ配置信息,然后创建一个ConnectionFactory和RabbitTemplate来连接RabbitMQ。接着,我们创建一个SimpleMessageListenerContainer并将其设置为监听名为“myQueue”的队列,同时指定一个自定义的消息监听器MyMessageListener。 最后,您可以在自定义的消息监听器中实现RabbitMQ的业务逻辑,如下所示: ```java public class MyMessageListener implements MessageListener { @Override public void onMessage(Message message) { try { String msg = new String(message.getBody(), "UTF-8"); System.out.println("Received message: " + msg); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } } ``` 这个消息监听器简单地将收到的消息转换为字符串并打印出来。 现在,您可以在应用程序中使用RabbitTemplate来发送消息,如下所示: ```java @Autowired private RabbitTemplate rabbitTemplate; public void sendMessage() { rabbitTemplate.convertAndSend("myExchange", "myRoutingKey", "Hello, RabbitMQ!"); } ``` 这个例子中,我们使用RabbitTemplate将消息发送到名为“myExchange”的交换机,并将其路由到名为“myRoutingKey”的队列。 以上就是Spring Boot集成RabbitMQ的基本步骤。希望这些信息能对您有所帮助!
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bytes Master

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值