Чтобы использовать реестр слитой схемы и avro-сериализатор в весеннем приложении, как сделать для ввода данных json - PullRequest
0 голосов
/ 04 марта 2020

В настоящее время я использовал пример github Spring Cloud Stream, однако я не знаю, как перевести объекты, введенные вручную, в формат json, предоставляя из существующих данных json. Я могу вывести схему avro, используя какой-либо инструмент из данных json. Однако проблема в том, что я не хочу использовать POJO, выведенные из класса в import с использованием схемы avro, вместо этого я хочу использовать существующие данные json. Я также запутался в части application / json, когда я использую curl -X POST, возможно, есть ли способ подачи данных в запросе http (добавить аннотации в части отправки сообщения). Кроме того, объясните @ResquestMapping и @Enablebinding, @StreamListener, когда их использовать.

1 Ответ

0 голосов
/ 05 марта 2020

Для начала вам нужно определить производителя, используя KafkaAvroSerializer, а не какой-нибудь StringSerializer или JSON one

из существующих json данных

Вы использовали бы из существующих json данных, таких как Джексон или Гсон, чтобы передать JSON в POJO, проанализировав его.

проблема в том, что я не хочу использовать POJO, выведенные из класса

POJO определяет классы. Они не выводятся

с использованием схемы avro. Вместо этого я хочу использовать существующие данные json.

JSON и Avro - это разные форматы. Вам придется использовать какой-то инструмент для их перевода или самостоятельно проанализировать JSON и создать запись Avro

Я также запутался в части приложения / json, когда использую curl -X POST, возможно, есть ли способ подачи данных в запросе http (добавить аннотации в части отправки сообщения

Да, заголовки определяют дополнительные метаданные в запросе

curl -H 'Content-Type:application/json`

@ StreamListener, когда их использовать

Когда вы используете события, а не отправляете их

...