Apache kafka 如何映射输入KStream<;字符串,字符串>;进入<;字符串,CarClass>;使用KeyValueMapper?
接收Json数据,我只是想将其映射到CarClass上,并想创建新的流,但map方法不允许我将其映射到自定义数据类型上 类型KStream中的方法映射(KeyValueMapper>)不适用于以下参数(new KeyValueMapper>(){}): 该示例将值类型从Apache kafka 如何映射输入KStream<;字符串,字符串>;进入<;字符串,CarClass>;使用KeyValueMapper?,apache-kafka,apache-kafka-streams,Apache Kafka,Apache Kafka Streams,接收Json数据,我只是想将其映射到CarClass上,并想创建新的流,但map方法不允许我将其映射到自定义数据类型上 类型KStream中的方法映射(KeyValueMapper>)不适用于以下参数(new KeyValueMapper>(){}): 该示例将值类型从byte[]更改为Integer。对于String到CarClass是相同的 KStream-stream=。。。; //Java 8+示例,使用lambda表达式 //注意我们如何更改键和键类型(类似于“selectKey”)
byte[]
更改为Integer
。对于String
到CarClass
是相同的
KStream-stream=。。。;
//Java 8+示例,使用lambda表达式
//注意我们如何更改键和键类型(类似于“selectKey”)
//以及值和值类型。
KStream transformed=stream.map(
(key,value)->KeyValue.pair(value.toLowerCase(),value.length());
//Java7示例
KStream transformed=stream.map(
新的KeyValueMapper(){
@凌驾
公钥值应用(字节[]键,字符串值){
返回新的KeyValue(value.toLowerCase(),value.length());
}
});
但是,如果您只想修改该值,我建议使用mapValues()
而不是map()