Преобразование потоков Kafka в KStream

#java #apache-kafka #apache-kafka-streams

#java #apache-kafka #apache-kafka-streams

Вопрос:

Я понимаю, что вы можете использовать методы process или transform для указания пользовательского поведения.

Я хочу передавать каждое KStream значение сообщения в отдельный метод Java. Возможно ли преобразовать KStream значение сообщения в String , которое я могу передать своему Java-методу?

Я не могу найти ничего о преобразовании KStream сообщения в другой тип, чтобы я мог передать его методу.

Комментарии:

1. Это зависит от вашего типа значения, используя KStream::mapValues , KStream::map вы можете преобразовать в новое значение / тип значения ( kafka.apache.org/21/javadoc/org/apache/kafka/streams/kstream /… , kafka.apache.org/21/javadoc/org/apache/kafka/streams/kstream /… )

2. Я не хочу преобразовывать значение в KStream, я хочу преобразовать значение KStreams в другой строковый объект, который я могу передать методу Java

3. Использование потоков Kafka в основном связано с преобразованием ключей и / или значений.

4. Я в курсе, но вы можете реализовать методы process или transform для включения пользовательской логики, а также вы можете реализовать processor api

5. Не уверен, что вы хотите сделать. Может быть stream.foreach(...) и вызвать метод для каждой входной записи? Вы могли бы преобразовать тип значения в строку «на лету». Способ преобразования значения в строковый тип зависит от типа значения. Проще всего было бы вызвать toString() .