Co to jest scalanie w stanie hibernacji?
Co to jest scalanie w stanie hibernacji?

Wideo: Co to jest scalanie w stanie hibernacji?

Wideo: Co to jest scalanie w stanie hibernacji?
Wideo: Difference between update vs merge in Hibernate Example |Hibernate merge() vs. update() 2024, Listopad
Anonim

Jak wiemy, update() i łączyć () metody w hibernować służą do konwersji obiektu znajdującego się w stanie odłączonym w stan trwałości. Łączyć w takim przypadku należy użyć. Łączy zmiany odłączonego obiektu z obiektem w sesji, jeśli taki istnieje.

Jaka jest więc różnica między Merge a saveOrUpdate w trybie hibernacji?

Jeśli używasz zapisz lub zaktualizuj , zapisany obiekt MUSI być dołączony do sesji. Hibernować zajmuje się ŁĄCZENIE dane do zawłaszczenia hibernować sesji dołączył obiekt i zapisuje dane. Jedyny minus używania ŁĄCZYĆ jest to, że przekazany obiekt nie odzwierciedla zmienionych informacji.

Następnie pojawia się pytanie, co to jest eksmisja w stanie hibernacji? eksmitować () Aby odłączyć obiekt z pamięci podręcznej sesji, hibernować zapewnia eksmitować () metoda. Po odłączeniu obiektu od sesji żadna zmiana obiektu nie zostanie zachowana. Powiązane obiekty zostaną również odłączone, jeśli powiązanie jest mapowane za pomocą kaskady = eksmitować.

Warto również wiedzieć, jak działa hibernacja aktualizacji?

aktualizacja () aktualizacja () metoda aktualizacje jednostka do utrwalania przy użyciu identyfikatora odłączonego obiektu lub nowa instancja jednostki utworzonej z istniejącym identyfikatorem. Jeśli obiekt jest już w sesji o tym samym identyfikatorze, zgłasza wyjątek.

Co robi scalanie EntityManager?

ten EntityManager . łączyć () operacja służy do łączyć zmiany wprowadzone do odłączonego obiektu w kontekście trwałości. scalanie nie nie aktualizuje bezpośrednio obiektu do bazy danych, scala zmiany w kontekście trwałości (transakcja).

Zalecana: