Memahami @Id dan @GeneratedValue(strategy = GenerationType.IDENTITY) Anotasi untuk Auto-Incrementing Table ID
Dalam Java Persistence API ( JPA), anotasi @Id menandakan medan sebagai kunci utama untuk entiti. Anotasi @GeneratedValue menentukan cara nilai kunci utama dijana. Satu strategi yang biasa digunakan ialah GenerationType.IDENTITY, yang melibatkan pergantungan pada ciri penambahan automatik pangkalan data.
Mengapa Gunakan Anotasi Ini?
Anotasi ini memberikan beberapa faedah:
Contoh Penggunaan
Contoh kod berikut menggambarkan bagaimana @Id dan @GeneratedValue( strategi = GenerationType.IDENTITY) anotasi ialah digunakan:
@Entity public class Author { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; private String name; private String address; }
Dalam contoh ini, medan id dianotasi dengan kedua-dua @Id dan @GeneratedValue(strategi = GenerationType.IDENTITY), menunjukkan bahawa ia adalah kunci utama dan harus ditambah secara automatik.
GenerationType.IDENTITI vs. Lain-lain Jenis
GenerationType.IDENTITY ialah salah satu daripada beberapa jenis strategi yang tersedia untuk anotasi @GeneratedValue. Jenis lain termasuk:
Jenis yang sesuai untuk digunakan bergantung pada pangkalan data khusus yang digunakan dan keperluan aplikasi.
Keperluan Memperluas Domain Kelas
Keperluan melanjutkan kelas abstrak Domain bergantung pada keperluan aplikasi khusus. Kelas domain biasanya menyediakan kefungsian dan tingkah laku biasa untuk entiti dalam model domain. Dalam contoh yang diberikan, melanjutkan kelas Domain nampaknya tidak perlu, kerana kelas Pengarang tidak memerlukan sebarang fungsi berkaitan domain khusus.
Atas ialah kandungan terperinci Bagaimanakah Anotasi `@Id` dan `@GeneratedValue(strategy = GenerationType.IDENTITY)` Menjana ID Auto-Incrementing dalam JPA?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!