Junior — Middle
Co oznacza stan trwały encji w Hibernate i jak wpływa na jej zarządzanie w kontekście ORM?
sobes.tech AI
Odpowiedź od AI
W Hibernate stan stan "persistent" (trwały) encji oznacza, że obiekt jest powiązany z bieżącą sesją i jest śledzony przez ORM. W tym stanie wszelkie zmiany obiektu są automatycznie synchronizowane z bazą danych podczas zatwierdzania lub wywołania flush.
Cechy stanu persistent:
- Obiekt ma identyfikator (ID), który odpowiada wpisowi w bazie.
- Zmiany w obiekcie są odzwierciedlane w bazie bez konieczności jawnego wywoływania metod zapisu.
- Obiekt jest zarządzany przez sesję Hibernate, co pozwala na efektywną pracę z cache'em i transakcjami.
Przykład: jeśli załadujesz encję z bazy przez sesję, staje się ona persistent. Modyfikując pola obiektu, nie musisz wywoływać jawnie update — Hibernate automatycznie zaktualizuje wpis przy zapisaniu transakcji.