@Entity
@Entity markiert eine POJO-Klasse als JPA-managed.
Hibernate trackt sie und syncht sie mit einer DB-Tabelle.
I. Beispiel
@Entity
@Table(name = "greetings")
public class Greeting {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@Column(name = "message", nullable = false, length = 255)
private String message;
public Greeting() {} // PFLICHT: no-arg public ctor!
}
II. Wichtige Annotationen
| Annotation | Bedeutung |
|---|---|
@Entity |
Klasse wird gemanagt |
@Table(name=...) |
Tabellenname (sonst = Klassenname) |
@Id |
Primärschlüssel |
@GeneratedValue |
Wer vergibt die ID (IDENTITY = DB) |
@Column(name=...) |
Spalten-Mapping (camelCase → snake_case) |
Warning
no-arg public Konstruktor ist PFLICHT (für Reflection).
@Column(name=...) muss exakt zur DB-Spalte passen, sonst failt validate.
III. .NET-Pendant
EF Core Entity-Klasse mit [Table], [Key], [Column].