Adnotările @Entity și @Table în Spring Data JPA în Spring Boot

data Spring Boot 3.x / Jakarta Persistence (JPA) Q&A / Distribuie cod

Declararea claselor persistente prin Jakarta Persistence: maparea obiectelor Java pe tabele relaționale SQL și configurarea indecșilor.

Sintaxă
@Entity / @Table(name = "users", schema = "public")

Adnotarea @Entity este adnotarea fundamentală a specificației JPA (Jakarta Persistence), semnalând providerului ORM (Hibernate) că respectiva clasă Java reprezintă o tabelă persistentă în baza de date relațională.

Adnotarea însoțitoare @Table permite personalizarea numelui tabelei (atunci când diferă de denumirea clasei), a schemei bazei de date și declararea indecșilor compuși sau a constrângerilor de unicitate (Unique Constraints) la nivel de tabelă.

Exemplu: Entitate JPA cu nume de tabelă și constrângere unică
package ro.dexblog.demo.model;

import jakarta.persistence.*;

@Entity
@Table(
    name = "tbl_customers",
    indexes = {@Index(name = "idx_customer_email", columnList = "email")},
    uniqueConstraints = {@UniqueConstraint(name = "uk_customer_cnp", columnNames = {"cnp"})}
)
public class Customer {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(nullable = false, length = 100)
    private String name;

    @Column(nullable = false, unique = true)
    private String email;

    @Column(nullable = false, length = 13)
    private String cnp;

    // Getters, Setters și Constructor implicit fără argumente (obligatoriu JPA)
    public Customer() {}
}

Comunitate & Schimb de cunoștințe

Întrebări & Exemple de Cod: Adnotările @Entity și @Table în Spring Data JPA

Ai o nelămurire despre utilizarea comenzii Adnotările @Entity și @Table în Spring Data JPA sau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!

💬

Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!

Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.

Comunitate Adaugă o întrebare sau distribuie un cod

Moderare & Siguranță:

Pentru a menține calitatea și securitatea informațiilor, fiecare întrebare sau fragment de cod/prompt este analizat (manual sau prin moderare asistată de AI) înainte de publicare.