kafka-consumer-api - 我们可以将动态属性放入@KafkaListener(properties = {max.pool.size.ms: 三元运算符
问题描述
是否可以在@KafkaListener 中加入动态三元条件?
解决方案
是的; 看到这个测试用例。
@KafkaListener(id = "#{'qux'}", topics = "annotated4",
containerFactory = "kafkaManualAckListenerContainerFactory", containerGroup = "qux#{'Group'}",
properties = {
"max.poll.interval.ms:#{'${poll.interval:60000}'}",
ConsumerConfig.MAX_POLL_RECORDS_CONFIG + "=#{'${poll.recs:100}'}"
})
在这种情况下,它会加载poll.interval
属性,如果缺失,则使用 60000。
您可以使用任何 SpEL 表达式,例如
#{@someBean.someProperty}
#{'${foo.prop}' == null ? '${bar.prop:60000}' : '${foo.prop}'
推荐阅读
- python - 在 VS Code Insiders for Python Native Notebook 中哪里可以找到数据查看器/变量资源管理器?
- reactjs - 反应 CRA 代理问题
- c# - 将自定义类型作为命令参数传递
- postgis - 完整的新手问题:我想通过命令提示符删除一个表(postgis)
- reactjs - 如何在反应 js 中模拟嵌套组件导入并使用反应测试库进行测试
- winforms - 配置等待,用户界面,等待异步
- python - 使用 zip 函数有什么好处 df['full_name']=zip(df['name'],df['last name'])
- javascript - 如何设置我可以在库存中拥有的物品数量限制?
- git - Azure Devops:结帐步骤缓慢:到许多对象?
- javascript - 在这种情况下不知道如何更改为小写