1.生产者
发送消息进行序列化
@Configuration
public class RabbitConfig {
@Bean
public RabbitTemplate createRabbitTemplate(ConnectionFactory connectionFactory){
RabbitTemplate rabbitTemplate = new RabbitTemplate();
rabbitTemplate.setConnectionFactory(connectionFactory);
//实现消息的序列化
rabbitTemplate.setMessageConverter(new Jackson2JsonMessageConverter());
}
}
2.消费者
进行反序列化
@Configuration
public class RabbitMQConfig implements RabbitListenerConfigurer {
@Override
public void configureRabbitListeners(RabbitListenerEndpointRegistrar registrar) {
registrar.setMessageHandlerMethodFactory(messageHandlerMethodFactory());
}
@Bean
private MessageHandlerMethodFactory messageHandlerMethodFactory()
{
DefaultMessageHandlerMethodFactory defaultMessageHandlerMethodFactory = new DefaultMessageHandlerMethodFactory();
defaultMessageHandlerMethodFactory.setMessageConverter(mappingJackson2MessageConverter());
return defaultMessageHandlerMethodFactory;
}
@Bean
private MessageConverter mappingJackson2MessageConverter() {
return new MappingJackson2MessageConverter();
}
}