10 najczęściej zadawanych pytań i odpowiedzi na temat wywiadu hibernacyjnego (zaktualizowanych do 2019 r.)

Spisie treści:

Anonim

Wprowadzenie do Hibernacji Wywiad Pytania i odpowiedzi

Hibernacja to narzędzie do mapowania obiektów, które pomaga uprościć połączenie aplikacji z bazą danych. Zapewnia mapowanie obiektu Java za pomocą tabel bazy danych. Mapuje klasę Java z tabelą w bazie danych. Nazwa tabeli i klasy zależy od wyboru programisty przez programistę. Ma funkcję nadawania nazwy zgodnie z wymaganiami firmy. Zapewnia płynną łączność z bazą danych aplikacji. Hibernacja zapewnia również język zapytań niezależny od bazy danych, który jest znany jako HQL - język zapytań hibernacji. jest to obiektowa wersja języka SQL, która pomaga aplikacji w łatwej migracji z innymi bazami danych w przypadku zmiany bazy danych w przyszłości.

Hibernacja zapewnia także wiele innych funkcji, takich jak automatyczne tworzenie tabeli. Jest to jedna z najpotężniejszych funkcji hibernacji. Aby to obsłużyć, musimy wykonać małą konfigurację w pliku XML, po czym wszystko zajmuje się tylko hibernacją. Hibernacja czy brudne sprawdzanie oznacza, że ​​zawsze sprawdza stan obiektu Java, jeśli znajdzie jakiekolwiek zmiany w stanie obiektu, automatycznie aktualizuje bazę danych. ma włączoną funkcję drugiego poziomu catch, która pomaga poprawić wydajność aplikacji. Są to zaawansowane funkcje Hibernacji.

Teraz, jeśli szukasz pracy związanej z Hibernacją, musisz przygotować się na pytania dotyczące wywiadu Hibernacji 2019. Prawdą jest, że każda rozmowa kwalifikacyjna jest inna w zależności od profilu pracy. Tutaj przygotowaliśmy ważne pytania i odpowiedzi na wywiad Hibernacji 2019, które pomogą Ci odnieść sukces w rozmowie.

Poniżej znajduje się 10 ważnych pytań i odpowiedzi Hibernacji podczas wywiadu. Te pytania są podzielone na dwie części:

Część 1 - Pytania do wywiadu hibernacji (podstawowe)

Ta pierwsza część obejmuje podstawowe pytania i odpowiedzi dotyczące wywiadu hibernacji.

1) Rozróżnić get i load w Hibernacji?

Odpowiedź:
Metoda Get trafia do bazy danych zawsze, jeśli nie znajdzie obiektu w pamięci podręcznej. Daje całkowicie zainicjowany obiekt, który może obejmować kilka wywołań baz danych, co może obniżyć wydajność aplikacji. Podczas gdy metoda load może zwrócić obiekt proxy, jeśli obiekt nie jest buforowany, trafia do bazy danych dla wszystkich metod obiektu z wyjątkiem metody getId () . Jeśli obiekt nigdzie nie zostanie znaleziony, pobierz metodę zwróć wartość null, a metoda load zgłosi wyjątek ObjectNotFoundException. Możemy więc zastosować te metody zgodnie z naszymi wymaganiami.

2) Jaka jest różnica między obiektem trwałym, przejściowym i odłączonym?

Odpowiedź:
W trybie hibernacji podano 3 stany obiektu podane poniżej.

Są to przemijające, trwałe, oderwane. Każdy obiekt będzie w stanie trwałości, jeśli będzie powiązany z sesją hibernacji. wszelkie zmiany w bieżącym obiekcie zostaną odzwierciedlone w bazie danych na podstawie naszej strategii opróżniania. Automatyczne opróżnianie ma miejsce za każdym razem, gdy jakakolwiek właściwość obiektu zmienia się lub jawnie opróżnia przez wywołanie metody flush () klasy Session W przypadku wystąpienia, które wcześniej było powiązane z pewnym trwałym kontekstem, ale teraz nie jest już powiązane, jest stanem odłączonym.

Przejdźmy do następnych pytań do wywiadu hibernacji.

3) Czy można uczynić finałową klasą istot hibernacji?

Odpowiedź:
Tak, możliwe jest zakończenie klasy Hibernacja Entity, ale nie jest to dobra praktyka. Ponieważ Hibernate używa wzorca proxy do poprawy wydajności aplikacji, aw przypadku leniwego skojarzenia, czyniąc klasę encji ostateczną, Hibernate nie będzie już mógł używać proxy, powodem tego jest to, że Java nie pozwala na rozszerzenie z ostatniej klasy; ogranicza opcje poprawy wydajności. Możemy jednak rozwiązać ten problem, jeśli nasza trwała klasa jest implementacją interfejsu, który deklaruje wszystkie metody publiczne zdefiniowane w klasie Entity.

4) Wyjaśnić pamięć podręczną zapytań?

Odpowiedź:
Oto najczęściej zadawane pytania podczas wywiadu Hibernacja. Pamięć podręczna zapytań służy do przechowywania wyniku zapytania SQL dla przyszłych wezwań do poprawy wydajności. Można go również użyć wraz z pamięcią podręczną drugiego poziomu hibernacji, aby poprawić wydajność aplikacji. Hibernacja ma wiele otwartych rozwiązań buforujących do implementacji pamięci podręcznej zapytań.

5) Dlaczego nie należy podawać konstruktora argumentów w jednostkach?

Odpowiedź:
Klasa encji musi zawierać konstruktor bez argumentów, ponieważ środowisko Hibernacja tworzy obiekt tych klas za pomocą interfejsu API Reflection, wywołując nową metodę Instance () klasy Class. Ta metoda wygeneruje wyjątek tworzenia wystąpienia, jeśli nie znajdzie żadnego konstruktora argumentów w klasie Entity.

Część 2 - pytania do wywiadu hibernacji (zaawansowane)

Spójrzmy teraz na zaawansowane pytania dotyczące wywiadu hibernacyjnego.

6) Wyjaśnić metodę blokady () sesji w Hibernacji?

Odpowiedź:
Metoda lock () klasy sesji służy do ponownego przyłączenia obiektu bez aktualizacji lub synchronizacji z bazą danych. Dlatego musimy być bardzo ostrożni podczas korzystania z tej metody. Zawsze możemy użyć metody update (), aby zsynchronizować bazę danych podczas ponownego podłączania.

7) Wyjaśnij pamięć podręczną drugiego poziomu w trybie hibernacji?

Odpowiedź:
Pamięć podręczna drugiego poziomu jest utrzymywana na poziomie Session Factory i służy do poprawy wydajności aplikacji poprzez zaoszczędzenie niewielkiej liczby podróży w obie strony do bazy danych. Jest również dostępny dla całej aplikacji, a nie dla każdej konkretnej sesji

Przejdźmy do następnych pytań do wywiadu hibernacji.

8) Jakie są zalety hibernacji w porównaniu z JDBC?

Odpowiedź:
Hibernacji można używać z dowolnym typem bazy danych, ponieważ jest ona niezależna od bazy danych, podczas gdy w JDBC programista musi pisać zapytania specyficzne dla bazy danych.
W stanie hibernacji nie musimy być ekspertami w pisaniu złożonych typów zapytań, ponieważ HQL ułatwia proces pisania zapytań, podczas gdy w przypadku JDBC deweloper musi pisać i dostosowywać zapytania.
W trybie hibernacji nie ma potrzeby tworzenia pul połączeń, ponieważ hibernacja wykonuje całą obsługę połączeń automatycznie W JDBC pule połączeń muszą zostać utworzone przez programistę

9) W jaki sposób można zidentyfikować obiekty i jakie są różne sposoby pobierania w Hibernacji?

Odpowiedź:
To najczęściej zadawane pytania dotyczące wywiadu podczas hibernacji. Poniżej przedstawiono trzy sposoby identyfikacji obiektu.
Korzystanie z tożsamości bazy danych: Obiekty relacyjnej bazy danych można zidentyfikować, jeśli reprezentują ten sam wiersz.
Korzystanie z równości obiektów: Korzystanie z metody equals ().
Korzystanie z tożsamości obiektu: Korzystanie z operatora ==.

Poniżej przedstawiono strategie pobierania dostępne w trybie hibernacji:

Pobieranie partii
Dołącz do pobierania
Wybierz opcję Pobieranie
Wybierz Pobieranie

10) Powiedz nazwę kilku interfejsów frameworku Hibernacja?

Odpowiedź:
Session Factory: jest to niezmienna, bezpieczna dla wątków pamięć podręczna skompilowanych mapowań dla pojedynczej bazy danych. Musimy go zainicjować raz, a następnie będziemy mogli buforować i ponownie go użyć. jego instancja służy do pobierania obiektów sesji dla różnych operacji na bazie danych.

Sesja jest to jednowątkowy, krótkotrwały obiekt reprezentujący interfejs między aplikacją a trwałym sklepem. Pakuje JDBC java.sql.Connection i działa jako fabryka transakcji. Powinieneś otworzyć sesję tylko wtedy, gdy jest to wymagane i zamknąć ją, gdy tylko skończysz z niej korzystać. Obiekt sesji stanowi interfejs między kodem aplikacji Java a strukturą hibernacji i zapewnia różne metody operacji CRUD w Javie.

Transakcja): jest to jednowątkowy, krótkotrwały obiekt używany przez aplikację Java do określania atomowych jednostek pracy. Wyodrębnia aplikację z bazowej transakcji JTA lub JDBC. W niektórych przypadkach sesja może zawierać wiele transakcji.

Polecane artykuły

Jest to przewodnik po liście pytań i odpowiedzi do wywiadu hibernacji, dzięki czemu kandydat może łatwo stłumić pytania dotyczące wywiadu hibernacji. W tym poście przeanalizowaliśmy najważniejsze pytania dotyczące wywiadu hibernacyjnego, które często zadawane są w wywiadach. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -

  1. Pytania do wywiadu WCF
  2. Pytania do Docker Interview
  3. Wiosenne ramy Wywiad Pytania
  4. Pytania do wywiadu PLSQL