我遇到了KTable的问题,我无法使其在我的项目上正常工作,我将与spring boot和kafka共享一个简单的示例,以读取KTable然后显示值。
@Component
@RequiredArgsConstructor
public class FocusDataLoadStream {
private final StreamsBuilder streamsBuilder;
@PostConstruct
public void replicationStream() {
KTable<Object, Object> actors = streamsBuilder.stream("actor").selectKey((key, value) -> {
try {
return new ObjectMapper().readValue(((String) value).substring(6, ((String) value).length() - 1), Actor.class).getPosId();
} catch (IOException e) {
e.printStackTrace();
}
return key;
}).groupByKey().reduce((agg, newValue) -> newValue);
actors.toStream().foreach((key,value) -> System.out.println(value));
}
}
所以在这里我有一个名为actor的主题,数据看起来像json但有一些额外的错误值,这就是为什么我要使用子字符串(仅用于测试)进行对象映射器的原因,最后我只想读取再次流,但从未调用过,但是当我直接创建流时,它的工作原理
数据看起来像:{“ id”:“ 100”,“ posId”:“ 100”,“ name”:“ name”}
如果可以的话,请帮我,从昨天开始我就被封锁了
谢谢