为true或false都打了日志。
但是查看日志的时候,只要发送和接收的时候的两行,并没有ack判断后的日志。
但是,既然消费成功了,那肯定是投递到了MQ,为什么没日志呢?这么做不对?
@Override
public void confirm(CorrelationData correlationData, boolean ack, String cause) {
String jsonString = correlationData.getId();
System.out.println("消息id:" + correlationData.getId());
if (ack) {
log.info(">>>使用MQ消息确认机制确保消息一定要投递到MQ中成功");
return;
}
JSONObject jsonObject = JSONObject.parseObject(jsonString);
// 生产者消息投递失败的话,采用递归重试机制
send(jsonObject);
log.info(">>>使用MQ消息确认机制投递到MQ中失败"+cause);
}