【RabbitMQ】SpringAMQP--消息转换器

SpringAMQP--消息转换器

测试发送Object类型消息

1.声明队列

java 复制代码
@Configuration
public class FanoutConfig {
    @Bean
    public Queue objectQueue(){
        return new Queue("object.queue");
    }
}

运行消费者后:

2.发送消息

java 复制代码
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringAmqpTest {
    @Autowired
    private RabbitTemplate rabbitTemplate;
     @Test
    public void testSendObjectQueue(){
        Map<String,Object> msg = new HashMap<>();
        msg.put("name","柳岩");
        msg.put("age",26);
        rabbitTemplate.convertAndSend("object.queue",msg);
    }
}

运行发布者后:

3.使用基于JDK的ObjectOutputstream完成序列化

3.1在父工程中引入依赖(发布者与消费者都需要使用)
xml 复制代码
<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
</dependency>
3.2在发布者服务与消费者服务声明MessageConverter
java 复制代码
@Bean
public MessageConverter messageConverter(){
	return new Jackson2JsonMessageConverter();
}
3.3发布者服务结果

先清理object.queue队列中的信息

在运行发布者后:

3.4消费者服务结果
java 复制代码
//消费者代码
@Component
public class SpringRabbitListener {

    @RabbitListener(queues = "object.queue")
    public void listenObjectQueue(Map<String,Object> msg){
        System.out.println("接收到object.queue的消息:" + msg);
    }

}

运行后的结果:

相关推荐
程序员小远2 分钟前
Web自动化测试详解
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
少许极端7 分钟前
Redis入门指南:从零到分布式缓存-hash与list类型
redis·分布式·缓存·list·hash
红石程序员10 分钟前
Python环境管理
开发语言·python
Chennnng12 分钟前
关于python版本,显卡版本,torch版本之间的问题
开发语言·python
战南诚23 分钟前
python序列化-dumps的妙用
python
华研前沿标杆游学36 分钟前
12月13日·东莞线下沙龙|少年企业家商业思维拓展营
python
北极糊的狐1 小时前
stream.findFirst().get() 报错 NoSuchElementException
开发语言·python
黑客思维者1 小时前
Python数据清洗实战:去重/标准化
开发语言·python·数据清洗·数据标准化
CryptoRzz1 小时前
对接印度股票市场数据 (India api) 实时k线图表
java·开发语言·python·区块链·maven
鹿角片ljp1 小时前
基于 BiLSTM 的中文文本相似度计算项目实现
python·nlp·lstm