【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);
    }

}

运行后的结果:

相关推荐
云泽野5 小时前
【Java|集合类】list遍历的6种方式
java·python·list
IMPYLH6 小时前
Python 的内置函数 reversed
笔记·python
小赖同学啊8 小时前
物联网数据安全区块链服务
开发语言·python·区块链
ZHOU_WUYI8 小时前
一个简单的分布式追踪系统
分布式
码荼8 小时前
学习开发之hashmap
java·python·学习·哈希算法·个人开发·小白学开发·不花钱不花时间crud
小陈phd9 小时前
李宏毅机器学习笔记——梯度下降法
人工智能·python·机器学习
kk爱闹9 小时前
【挑战14天学完python和pytorch】- day01
android·pytorch·python
Blossom.11810 小时前
机器学习在智能建筑中的应用:能源管理与环境优化
人工智能·python·深度学习·神经网络·机器学习·机器人·sklearn
亚力山大抵10 小时前
实验六-使用PyMySQL数据存储的Flask登录系统-实验七-集成Flask-SocketIO的实时通信系统
后端·python·flask
showyoui10 小时前
Python 闭包(Closure)实战总结
开发语言·python