java - Avro 模式对象通用 kafkaTemplate 类型 - 生成消息
问题描述
我的卡夫卡模板看起来像这样的情况:
KafkaTemplate<String, InternalSelfServiceData> kafkaTemplate;
其中: InternalSelfServiceData -> Avro 模式对象
当我调用kafkaTemplate.send()
我的返回类型是ListenableFuture<SendResult<String, InternalSelfServiceData>>
. 接下来,我将此数据作为参数传递给下一个方法,但我希望这个方法是通用的,所以我希望他们接受这样的参数ListenableFuture<SendResult<String, ? extends SpecificRecordBase>>
。
IntelliJ 中出现的错误是:
必需类型:ListenableFuture <SendResult<String, ? 扩展特定记录库>>
提供:ListenableFuture <SendResult<String, InternalSelfServiceData>
有什么建议我想念的吗?
解决方案
尝试将您的数据编码为字节数组(org.apache.avro.specific.SpecificDatumWriter)
推荐阅读
- python - 不同颜色的 Pandas 绘图条无法按预期工作
- php - group by 和 group_concat 替代方案
- javascript - Vue.js 下拉菜单,具有跳转到最后一个选定项目的功能
- android - 每次加载片段时不必从 Firebase 加载数据的最佳方法是什么?
- tcp - TCP 发送方是否在计时器到期后重新传输与前一个 SYN 完全相同的 SYN?
- node.js - 基于 http 调用测试 Web 应用的最佳实践
- pycharm - 如何为我的所有快捷方式交换 CTRL/CMD?
- python - 使用 Multiprocessing 和 BeautifulSoup 进行网页抓取,有 MaybeEncodingError 和 RecursionError
- php - 通过日期选择器范围对表进行排序
- python - 如何使用 sklearn 弹性网制作 ROC?