واجهة برمجة تطبيقات GraphQL مع Java: دليل تعليمي خطوة بخطوة للمبتدئين

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

مقدمة: لماذا يعتبر الجمع بين GraphQL وJava مزيجًا قويًا



تطوير واجهات برمجة التطبيقات (API) الحديثة يتطلب مرونة وكفاءة. REST API، على الرغم من شعبيته، غالبًا ما يواجه مشكلة over-fetching (تحميل زائد للبيانات) أو under-fetching (نقص في البيانات). GraphQL يحل هذه المشكلات، مما يسمح للعميل بطلب البيانات التي يحتاجها فقط.



Java، بدورها، تظل واحدة من أكثر اللغات موثوقية لتطوير المؤسسات. الجمع بين GraphQL وJava من خلال إطار العمل Spring Boot يعطي أداة قوية لإنشاء واجهات برمجة تطبيقات قابلة للتوسع وعالية الأداء. في هذا البرنامج التعليمي خطوة بخطوة، سنقوم بإنشاء واجهة GraphQL API بسيطة من الصفر.



ستكون هذه المادة مفيدة لمطوري Java الذين يرغبون في إتقان النهج الحديث لبناء واجهات برمجة التطبيقات. سنشرح المفاهيم الأساسية، ونكتب الكود، ونختبر تنفيذنا.



1. إعداد المشروع والتبعيات



الخطوة الأولى هي إنشاء مشروع Spring Boot أساسي. سنستخدم Maven لإدارة التبعيات. تأكد من تثبيت JDK 17+ و Maven 3.8+.



قم بإنشاء ملف pom.xml بالمحتوى التالي:



<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0         http://maven.apache.org/xsd/maven-4.0.0.xsd">    <modelVersion>4.0.0</modelVersion>

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.2.0</version> </parent>

<groupId>com.example</groupId> <artifactId>graphql-java-tutorial</artifactId> <version>1.0.0</version>

<properties> <java.version>17</java.version> </properties>

<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.graphql-java</groupId> <artifactId>graphql-spring-boot-starter</artifactId> <version>5.0.2</version> </dependency> <dependency> <groupId>com.graphql-java</groupId> <artifactId>graphql-java-tools</artifactId> <version>5.2.4</version> </dependency> </dependencies></project>


بعد إعداد pom.xml، قم بإنشاء الفئة الرئيسية للتطبيق:



package com.example.graphqldemo;

import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplicationpublic class GraphqlDemoApplication { public static void main(String[] args) { SpringApplication.run(GraphqlDemoApplication.class, args); }}


الآن هيكل المشروع جاهز. ننتقل إلى تعريف البيانات.



2. تعريف نموذج البيانات و GraphQL Schema



GraphQL Schema هو العقد بين العميل والخادم. سنبدأ بإنشاء نموذج بسيط Book (كتاب).



2.1 فئة النموذج في Java



package com.example.graphqldemo.model;

public class Book { private String id; private String title; private String author; private int pages;

public Book(String id, String title, String author, int pages) { this.id = id; this.title = title; this.author = author; this.pages = pages; }

// Getters and Setters public String getId

المدونات

توصيات الكتب