{"repo":"graphql-java/java-dataloader","free":true,"listed":false,"github":"https://github.com/graphql-java/java-dataloader","clone":"git clone https://github.com/graphql-java/java-dataloader.git","description":"A Java 11 port of Facebook DataLoader","language":"Java","stars":524,"topics":["dataloader","java","facebook-dataloader","batch","graphql","batch-loader"],"license":"Apache-2.0","category":"api-integrations-sdks","readme_excerpt":"java-dataloader This small and simple utility library is a pure Java 11 port of Facebook DataLoader. It can serve as integral part of your application's data layer to provide a consistent API over various back-ends and reduce message communication overhead through batching and caching. An important use case for java-dataloader is improving the efficiency of GraphQL query execution. Graphql fields are resolved independently and, with a true graph of objects, you may be fetching the same object many times. A naive implementation of graphql data fetchers can easily lead to the dreaded \"n+1\" fetch problem. Most of the code is ported directly from Facebook's reference implementation, with one IMPORTANT adaptation to make it work for Java 11. (more on this below). Before reading on, be sure to take a short dive into the original documentation provided by Lee Byron (@leebyron) and Nicholas Schrock (@schrockn) from Facebook, the creators of the original data loader. Table of contents - Features - Getting started! - Installing - Building - Examples - Other information sources - Contributing - Acknowledgements - Licensing Features java-dataloader is a feature-complete port of the Facebook reference implementation with one major difference. These features are: - Simple, intuitive API, using generics and fluent coding - Define batch load function with lambda expression - Schedule a load request in queue for batching - Add load requests from anywhere in code - Request returns a Completeab","default_branch":null,"files":null,"tree":[],"storefront":"/r/graphql-java","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/graphql-java/java-dataloader/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}