#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()
.