RabbitMQ消息队列+spring监听mq服务器,接收消费mq消息

本文介绍了在Maven+SSM框架下如何整合RabbitMQ,包括引入依赖、配置文件设置、在web.xml中引入配置、自定义监听类以及手动ACK机制的实现。通过自定义的RabbitMqConsumerListener类,实现了ChannelAwareMessageListener接口,详细解析了ack的三种情况:正常处理、异常处理和主动拒绝。在启动时可能出现由于服务器无消息导致的错误,但不影响实际接收和处理消息。
摘要由CSDN通过智能技术生成

最近soa项目要和官网系统对接,实现mq信息监听,保存等一些列操作。项目用的是Maven+SSM框架。然后学习和开发用了两天时间,算是搞定,趁加班时间做个总结。
对于Maven工程的ssm框架,整合RabbitMq首先就是

1.引入依赖:

<dependency>
	<groupId>org.springframework.amqp</groupId>
	<artifactId>spring-rabbit</artifactId>
	<version>1.3.5.RELEASE</version>
</dependency>

依赖不多,就这一个就够用了。但是有个坑要注意,如果引入的位置不对,启动会出现莫名的启动报错,我试了好几次,最后放到所有引入依赖的最后面是没问题的~所以,明智的选择是引入成功后先启动项目看看会不会报错,这个时候才引入一个依赖,正常不会报错,如果报错,就是位置不对,及时调整吧。

2.配置文件:context-rabbitMq.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans 	xmlns="http://www.springframework.org/schema/beans"  
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xmlns:rabbit="http://www.springframework.org/schema/rabbit" xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/rabbit  http://www.springframework.org/schema/rabbit/spring-rabbit-1.0.xsd">  
<!-- 定义RabbitMQ的连接工厂 -->  
<rabbit:connection-factory id="connectionFactory" class="org.springframework.amqp.rabbit.connection.CachingConnectionFactory">
	<constru
  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
### 回答1: 我可以为您写一个Spring Cloud应用程序中的MQ消息发送示例: connectionFactory.createConnection(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Destination destination = session.createQueue("myQueue"); MessageProducer producer = session.createProducer(destination); TextMessage message = session.createTextMessage("Hello World"); producer.send(message); ### 回答2: MQ消息队列)是一种常用的消息通信模式,在分布式系统中用于解耦应用间的通信,提高系统的稳定性和可扩展性。Spring Cloud是一个开源的分布式系统开发框架,提供了轻量级微服务架构的解决方案。 要将一个MQ消息发送给Spring Cloud,可以按照以下步骤进行: 1. 配置MQ:在Spring Cloud中使用MQ之前,首先需要配置MQ服务器。可以选择使用常见的MQ实现,如RabbitMQ、Kafka等。根据MQ提供的文档,安装并设置相应的配置信息,如服务器地址、端口号、用户名、密码等。 2. 引入MQ依赖:借助Spring Boot和Spring Cloud的依赖管理功能,可以方便地引入MQ相关的依赖。 3. 创建消息生产者:在Spring Cloud中,可以使用Spring Integration集成MQ,通过配置使用消息通道(Message Channel)来发送消息。根据具体的业务需求,创建一个消息生产者,负责将待发送的消息封装成MQ消息,并发送到指定的MQ服务器。 4. 配置消息通道:通过Spring Boot的自动配置,只需在应用配置文件中指定MQ相关的配置信息,如服务器地址、端口号、用户名、密码等,Spring Cloud会自动根据配置创建消息通道,连接到相应的MQ服务器。 5. 发送消息:在代码中,通过注入消息通道的方式获取消息通道的引用。然后,将封装好的MQ消息发送到消息通道中,即可发送给MQ服务器。 6. 监听消息:在Spring Cloud中,可以使用消息监听器(Message Listener)来监听MQ服务器上的消息。通过配置使用消息监听器,可以使应用实时获取MQ服务器上的消息,并进行相应的处理。 通过以上步骤,可以实现将一个MQ消息发送给Spring Cloud。这样,消息就可以在分布式系统中进行传递和处理,以达到解耦应用的目的。同时,Spring Cloud提供的一系列功能,如负载均衡、熔断、服务发现等,可以帮助开发者构建高可用的分布式系统。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

万米高空

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

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

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

打赏作者

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

抵扣说明:

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

余额充值