阻塞get等待获取结果
public void sendEvent2(String message){
Message<String> kafka = MessageBuilder.withPayload(message)
.setHeader(KafkaHeaders.TOPIC,"test")
.build();
ListenableFuture<SendResult<String, String>> send = kafkaTemplate.send(kafka);
CompletableFuture<SendResult<String, String>> completable = send.completable();
try {
SendResult<String, String> result = completable.get();
if(result.getRecordMetadata() != null){
System.out.println("消息发送成功!" + result.getRecordMetadata().toString());
}
}catch (Exception e){
e.printStackTrace();
}
}
注册回调函数或者结果
public void sendEvent2(String message){
Message<String> kafka = MessageBuilder.withPayload(message)
.setHeader(KafkaHeaders.TOPIC,"test")
.build();
ListenableFuture<SendResult<String, String>> send = kafkaTemplate.send(kafka);
CompletableFuture<SendResult<String, String>> completable = send.completable();
try {
completable.thenAccept((sendResult)->{
if(sendResult.getRecordMetadata() != null){
System.out.println("消息发送成功" + sendResult.getRecordMetadata().toString());
}
});
}catch (Exception e){
e.printStackTrace();
}
}