Memulai dengan Spring GraphQL | Oleh ELATTAR Saad | Mei, 2022

Programming

[ad_1]
Halo Teman-teman di suratpembaca.web.id. Kali ini kita akan membahas tentang Linux yaitu Memulai dengan Spring GraphQL | Oleh ELATTAR Saad | Mei, 2022

.

Mudah-mudahan postingan mengenai Memulai dengan Spring GraphQL | Oleh ELATTAR Saad | Mei, 2022

dapat memberikan faedah untuk Teman-teman semua. Langsung saja baca artikel ini
sampai selesai.

Musim semi bertemu GraphQL

Artikel ini adalah langkah pertama dalam menggunakan GraphQL dalam aplikasi Spring.

Tapi pertama-tama, mari kita pelajari lebih lanjut tentang GraphQL. Menurut Red Hat, GraphQL adalah kueri sisi server dan bahasa runtime untuk antarmuka pemrograman aplikasi (API) yang berfokus pada penyediaan informasi yang hanya dibutuhkan pelanggan.

GraphQL dibuat dengan tujuan menciptakan API yang cepat, serbaguna, dan nyaman bagi pengembang. Bahkan dapat digunakan dalam lingkungan pengembangan GraphiQL (IDE) terintegrasi. GraphQL, alternatif untuk REST, memungkinkan pengembang membuat kueri yang mengekstrak data dari berbagai sumber dalam satu panggilan API.

Selain itu, GraphQL memungkinkan administrator API untuk menambah atau menghapus bidang tanpa memengaruhi kueri yang ada. Pengembang dapat menggunakan teknik apa pun yang mereka pilih untuk membangun API, dan definisi GraphQL memastikan bahwa mereka bekerja secara konsisten untuk pelanggan.

Proyek yang akan kita bangun adalah sekolah/siswa sederhana yang menemukan semua titik akhir – hanya kali ini menggunakan GraphQL, yang memungkinkan kita mengubah struktur data respons dan melompat.

Siswa akan memiliki ID, nama, email dan sekolah, setiap sekolah memiliki ID dan nama.

Lembaga kemahasiswaan

@Entity
@Data
@NoArgsConstructor
public class Student

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
private Long id;
private String name;
private String email;

// Lazy fetch to avoid having the infinite loop
@ManyToOne(fetch = FetchType.LAZY)
private School school;

public Student(String name, String email, School school)
this.name = name;
this.email = email;
this.school = school;

Gudang siswa

@Repository
public interface StudentRepository extends JpaRepository<Student, Long>

Institusi sekolah

@Entity
@Data
@NoArgsConstructor
public class School

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
private Long id;
private String name;
@OneToMany
private List<Student> students;

public School(String name)
this.name = name;

Gudang sekolah

@Repository
public interface SchoolRepository extends JpaRepository<School, Long>

Sekarang kami telah membuat pengontrol kami untuk siswa dan sekolah dengan yang sederhana findAll Titik akhir dimulai dengan siswa:

@Controller
@AllArgsConstructor
public class StudentController
StudentRepository studentRepository;

@QueryMapping
List<Student> students()
return studentRepository.findAll();

Kontroler sekolah akan sama dengan siswa:

@Controller
@AllArgsConstructor
public class SchoolController

SchoolRepository schoolRepository;

@QueryMapping
List<School> schools()
return schoolRepository.findAll();

Di kelas utama kami, kami melanjutkan dengan satu set data eksperimen yang akan kita lihat di bawah:

Dan tentu saja, kita harus mengatur skema GraphQL kita di dalamnya resources Folder yang kami buat dengan nama lain graphql Yang berisi file dengan nama schema.graphqls (resources>graphql>schema.graphqls).

Rencananya akan terlihat seperti ini:

type Query 
students:[Student]
schools:[School]

type Student
id: ID!
name: String!
email: String!
school: School!

type School
id: ID!
name: String!

Akhirnya ke hasil! Anda dapat menggunakan antarmuka GraphiQL di http: // localhost: 8080 / graphiql.

Mari kita coba mengambil daftar siswa yang namanya hanya ditampilkan:

Sekarang mari kita miliki berdasarkan ID, nama dan email:

Mari tambahkan sekolah mereka ke hasil:

Juga, kami dapat mengambil sekolah:

Dan tentu saja, kita bisa pulih Students Dan sekolah dengan pertanyaan yang sama:

GraphQL adalah keuntungan yang signifikan untuk setiap proyek karena manipulasi hasilnya. Ini hanyalah langkah pertama menuju penggunaan GraphQL di bawah payung Spring!

Silakan temukan kode sumber di repositori GitHub saya di sini.

Itu tadi postingan tentang Memulai dengan Spring GraphQL | Oleh ELATTAR Saad | Mei, 2022

, terimakasih sudah berkunjung di website saya, semoga informasinya ada manfaatnya ya.

[ad_2]

Source link

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan.