Junior — Middle
Czy mógłbyś wyjaśnić mechanizm działania ORM w kontekście JPA?
sobes.tech AI
Odpowiedź od AI
ORM (Mapowanie Obiektowo-Relacyjne) w kontekście JPA (Java Persistence API) to mechanizm, który umożliwia pracę z bazą danych za pomocą obiektów Java, a nie bezpośrednio przez zapytania SQL.
JPA zapewnia standardowy interfejs do mapowania klas Java na tabele bazy danych. Obejmuje to:
- Klasy encji są oznaczone (@Entity), a pola są powiązane z kolumnami tabel.
- JPA automatycznie generuje zapytania SQL dla operacji CRUD (tworzenie, odczyt, aktualizacja, usuwanie).
- Zarządza stanem obiektów (nowy, zarządzany, odłączony, usunięty).
- Umożliwia korzystanie z JPQL — języka zapytań zorientowanego obiektowo.
Przykład encji:
@Entity
public class User {
@Id
@GeneratedValue
private Long id;
private String name;
// gettery i settery
}
W ten sposób ORM przez JPA upraszcza pracę z bazą danych, ukrywając szczegóły SQL i pozwalając na pracę z obiektami, które są znane i wygodne w użyciu.