rabbitmq 序列化反序列化
application.properties
spring.rabbitmq.addresses=172.xxxx
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
spring.rabbitmq.virtual-host=/
消息对象
@Data
@AllArgsConstructor
@NoArgsConstructor
public class OrderMessageDto implements Serializable {
private String orderNo;
private String orderType;
}
//实现 Serializable 接口!!
消费者
@Component
public class OrderConsumer {
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(value = "ex_order", type = ExchangeTypes.TOPIC),
value = @Queue(value = "order.que", durable = "true"),
key = "order.key"
))
@RabbitHandler
public void consumer1(OrderMessageDto message) {
try {
ObjectMapper mapper = new ObjectMapper();
System.out.println("recv1: " + mapper.writeValueAsString(message));
} catch (JsonProcessingException e) {
e.printStackTrace();
}
}
@RabbitListener(bindings = @QueueBinding(
exchange = @Exchange(value = "ex_order", type = ExchangeTypes.TOPIC),
value = @Queue(value = "order.que", durable = "true"),
key = "order.key"
))
@RabbitHandler
public void consumer2(OrderMessageDto message) {
try {
ObjectMapper mapper = new ObjectMapper();
System.out.println("recv2: " + mapper.writeValueAsString(message));
} catch (JsonProcessingException e) {
e.printStackTrace();
}
}
}
**@RabbitHandler
处理 对象序列化 !!, 需要加这个注解 **