在遵循 JsonSerdeExample 我能够直接从主题中消耗数据到我的Java对象中。以下属性发挥了所有的作用
spring.json.key.default.type: com.xxxx.datamapper.domain.FormUUID
spring.json.value.default.type: com.xxxx.datamapper.domain.FormData
然而,现在我想在一个spring boot应用程序中运行两个流监听器。为此,我需要为每个消费者绑定一个类似的配置。spring云是否支持这样做?
目前对于第二个流,我必须使用String序列化器进行消费,然后使用Object mapper进行映射。这样一来,应用代码就会出现不必要的转换而变得曲折。
该示例在binder级别定义了Serdes,你也可以在binding级别设置它们。
spring.cloud.stream.kafka.streams.bindings.foo.consumer.key-serde=
spring.cloud.stream.kafka.streams.bindings.foo.consumer.value-serde=
要覆盖粘结剂级别的设置。
同样,您也可以用同样的方式为Serdes设置属性。
spring.cloud.stream.kafka.streams.bindings.foo.consumer.configuration.spring.json...
您可以在粘合剂级别定义Serdes,也可以在绑定级别定义属性。