Study
Spring Boot

Spring Data JPA: @Entity & Repository

Penjelasan

Spring Data JPA adalah ORM Spring Boot — tabel direpresentasikan class ditandai @Entity dengan @Id dan @GeneratedValue untuk primary key. YANG PALING KHAS: Repository cukup didefinisikan sebagai INTERFACE extends JpaRepository<Entity, TipeId> — Spring Boot OTOMATIS men-generate implementasi method CRUD dasar (findAll, findById, save, delete) TANPA kamu menulis satu baris kode implementasinya.

Contoh Konsep

@Entity
public class Produk {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String nama;
    private double harga;

    // getter dan setter (atau pakai Lombok @Data untuk generate otomatis)
}

public interface ProdukRepository extends JpaRepository<Produk, Long> {
    // KOSONG, tapi sudah otomatis punya findAll(), findById(), save(), deleteById(), dst
}

Praktikum

Buat @Entity Artikel dengan @Id @GeneratedValue Long id, String judul, dan String isi. Buat interface ArtikelRepository extends JpaRepository<Artikel, Long> (kosong, cukup deklarasi interface-nya saja).

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Interface Repository yang KOSONG bukan berarti tidak berfungsi — ini FITUR UTAMA Spring Data JPA, bukan bug atau kekurangan. Spring Boot men-generate IMPLEMENTASI-nya secara otomatis di runtime berdasarkan tipe generic <Produk, Long> yang kamu tulis, kamu cuma perlu deklarasi interface-nya.