Я хочу погрузиться в graphQL с помощью Java. Я хочу запросить существующую службу graphQL. Из того, что я нашел до сих пор, есть способы создания файлов схемы graphQL либо в JSON, либо в IDL из ваших классов POJO, но не наоборот ....? Из того, что я понял до сих пор, мне пришлось бы самому создавать классы java, которые «представляют» объекты, которые я получу в результате запроса. Но у службы, которую я хочу использовать, есть множество конечных точек и запросов, и необходимость писать каждый класс pojo сама звучит так, как будто я что-то пропустил ... Я предполагаю, что должен быть способ генерировать заглушки, как я привык, из фреймворков REST API используя файлы swagger или yaml? Итак ... как я могу автоматически сгенерировать классы pojo, используя только файл схемы? Я прочитал описание подхода, основанного на схеме, в graphql-java, но они также предполагают, что сами пишут классы pojo.
Спасибо




Вы можете использовать плагин для своего инструмента сборки для создания POJO для типов / входов / интерфейсов / перечислений / и т.д. GraphQL и интерфейсов для запросов / мутаций / подписок. Все основано на вашей схеме GraphQL.
Ссылка на проект: https://github.com/kobylynskyi/graphql-java-codegen
Он имеет следующие плагины для вашего инструмента сборки:
Привет, я попробовал плагин gradle. Один недостаток, который я вижу для вложенных запросов, - предположим, что есть объект продукта с вложенным объектом Cost и запрос на получение продукта по идентификатору. Сгенерированная заглушка предназначена для метода productById (), который всегда будет запрашивать объект Cost независимо от запрашиваемой стоимости. Можем ли мы покончить с этой тесной связью?
Конечно. Вы можете создать проблему в следующем репо с помощью предлагаемого подхода: github.com/kobylynskyi/graphql-java-codegen
То, что я нашел до сих пор, HTH: (1) аналогичный вопрос SO (со ссылками в ответе); (2) Узлы, GraphQL для JVM; (3) Узлы на GitHub; (4) LiveGQL, подписки на WebSockets; (5) Потрясающий список GraphQL и Relay