Die 50 wichtigsten Fragen im Hibernate-Interview (2025)
Hier finden Sie Fragen und Antworten zu Hibernate-Interviews für Erstsemester und erfahrene Kandidaten, die ihren Traumjob bekommen möchten.
1. Was ist Hibernate?
Hibernate ist ein beliebtes Framework von Java, das eine effiziente objektrelationale Zuordnung mithilfe von Konfigurationsdateien im XML-Format ermöglicht. Nach der Zuordnung von Java-Objekten zu Datenbanktabellen wird die Datenbank mithilfe von Java-Objekten verwendet und verwaltet, ohne dass komplexe Datenbankabfragen geschrieben werden müssen.
Kostenloser PDF-Download: Fragen und Antworten zum Hibernate-Interview
2. Was ist ORM?
ORM (Object Relational Mapping) ist das grundlegende Konzept des Hibernate-Frameworks, das Datenbanktabellen mit Java-Objekten abbildet und dann verschiedene bereitstellt APIdient dazu, verschiedene Arten von Operationen an den Datentabellen auszuführen.
3. Wie werden Eigenschaften einer Klasse den Spalten einer Datenbanktabelle in Hibernate zugeordnet?
Zuordnungen zwischen Klasseneigenschaften und Tabellenspalten werden in angegeben XML Datei wie im folgenden Beispiel:
4. Wozu dient die Konfigurationsschnittstelle im Ruhezustand?
Die Konfigurationsschnittstelle des Hibernate-Frameworks wird zum Konfigurieren des Ruhezustands verwendet. Es ist auch daran gewöhnt bootstrap überwintern. Über diese Schnittstelle werden Zuordnungsdokumente von Hibernate gefunden.
5. Wie können wir neue benutzerdefinierte Schnittstellen verwenden, um die Funktionalität der integrierten Schnittstellen des Ruhezustands zu verbessern?
Wir können Erweiterungsschnittstellen verwenden, um alle erforderlichen Funktionen hinzuzufügen, die von integrierten Schnittstellen nicht unterstützt werden.
6. Sollten alle Zuordnungsdateien des Ruhezustands die Erweiterung .hbm.xml haben, damit sie ordnungsgemäß funktionieren?
Nein, die Erweiterung .hbm.xml ist eine Konvention und keine Voraussetzung für Hibernate-Mapping-Dateinamen. Wir können jede Erweiterung für diese Zuordnungsdateien haben.
7. Wie erstellen wir eine Sitzungsfabrik im Ruhezustand?
Um eine Sitzungsfabrik im Ruhezustand zu erstellen, wird zunächst ein Konfigurationsobjekt erstellt, das auf den Pfad der Konfigurationsdatei verweist. Anschließend wird für diese Konfiguration eine Sitzungsfabrik erstellt, wie im folgenden Beispiel dargestellt:
Configuration config = new Configuration(); config.addResource("myinstance/configuration.hbm.xml"); config.setProperties( System.getProperties() ); SessionFactory sessions = config.buildSessionFactory();
8. Was sind POJOs und welche Bedeutung haben sie?
POJOs (Plain Old Java Objects) sind Java Beans mit geeigneten Getter- und Setter-Methoden für jede einzelne Eigenschaft.
Die Verwendung von POJOs anstelle einfacher Java-Klassen führt zu einem effizienten und gut konstruierten Code.
9. Was ist HQL?
HQL ist die in Hibernate verwendete Abfragesprache und eine Erweiterung von SQL. HQL ist eine sehr effiziente, einfache und flexible Abfragesprache, mit der verschiedene Arten von Vorgängen in relationalen Datenbanken ausgeführt werden können, ohne dass komplexe Datenbankabfragen geschrieben werden müssen.
10. Wie können wir gespeicherte Prozeduren im Ruhezustand aufrufen?
Im Ruhezustand können wir gespeicherte Prozeduren mit dem folgenden Code ausführen:
11. Was ist die Kriterien-API?
Criteria ist eine einfache, aber leistungsstarke API des Ruhezustands, die zum Abrufen von Entitäten über die Zusammensetzung von Kriterienobjekten verwendet wird.
12. Welche Vorteile bietet die Verwendung der Hibernate-Vorlage?
Im Folgenden sind einige wichtige Vorteile der Verwendung der Hibernate-Vorlage aufgeführt:
A. Das Schließen der Sitzung erfolgt automatisiert.
B. Die Interaktion mit der Ruhezustandssitzung wird vereinfacht.
C. Die Ausnahmebehandlung ist automatisiert.
13. Wie können wir im Ruhezustand generiertes SQL auf der Konsole sehen?
Wir müssen in der Hibernate-Konfigurationsdatei Folgendes hinzufügen, um die Anzeige von SQL auf der Konsole für Debugging-Zwecke zu ermöglichen:
14. Welche zwei Arten von Sammlungen gibt es im Ruhezustand?
Im Folgenden sind die beiden Arten von Sammlungen im Ruhezustand aufgeführt:
- Sortierte Sammlung
- Abholung bestellen
15. Was ist der Unterschied zwischen den Methoden session.save() und session.saveOrUpdate() im Ruhezustand?
Sessionsave()-Methode Speichert einen Datensatz nur, wenn er in Bezug auf seinen Primärschlüssel eindeutig ist, und kann nicht eingefügt werden, wenn der Primärschlüssel bereits in der Tabelle vorhanden ist.
saveOrUpdate()-Methode Fügt einen neuen Datensatz ein, wenn der Primärschlüssel eindeutig ist, und aktualisiert einen vorhandenen Datensatz, wenn der Primärschlüssel bereits in der Tabelle vorhanden ist.
16. Welche Vorteile bietet der Winterschlaf? JDBC?
- Hibernate kann nahtlos mit jedem Datenbanktyp verwendet werden, da es datenbankunabhängig ist, während der Entwickler im Fall von JDBC datenbankspezifische Abfragen schreiben muss.
- Bei Verwendung des Ruhezustands muss der Entwickler kein Experte für das Schreiben komplexer Abfragen sein, da HQL den Abfrageschreibprozess vereinfacht, während es im Fall von JDBC die Aufgabe des Entwicklers ist, Abfragen zu schreiben und zu optimieren.
- Im Falle von Hibernate müssen keine Verbindungspools erstellt werden, da Hibernate die gesamte Verbindungsverarbeitung automatisch übernimmt, während im Falle von JDBC Verbindungspools erstellt werden müssen.
17. Wie können wir Ruhezustandsstatistiken erhalten?
Mit der Methode getStatistics() der SessionFactory-Klasse können wir Ruhezustandsstatistiken abrufen, wie unten gezeigt:
SessionFactory.getStatistics()
18. Was ist der vorübergehende Instanzstatus im Ruhezustand?
Wenn eine Instanz keinem dauerhaften Kontext zugeordnet ist und auch noch nie einem dauerhaften Kontext zugeordnet war, befindet sie sich im Übergangszustand.
19. Wie können wir die Zeit für Datenbankschreibvorgänge im Ruhezustand verkürzen?
Hibernate bietet eine Dirty-Checking-Funktion, mit der sich die Schreibzeiten der Datenbank verkürzen lassen. Die Dirty-Checking-Funktion des Ruhezustands aktualisiert nur die Felder, die geändert werden müssen, während andere unverändert bleiben.
20. Wozu dienen Callback-Schnittstellen im Ruhezustand?
Rückrufschnittstellen von Hibernate sind nützlich, um Ereignisbenachrichtigungen von Objekten zu empfangen. Wenn beispielsweise ein Objekt geladen oder gelöscht wird, wird ein Ereignis generiert und eine Benachrichtigung über Callback-Schnittstellen gesendet.
21. Wenn eine Instanz im Ruhezustand in den getrennten Zustand wechselt?
Wenn eine Instanz zuvor mit einem dauerhaften Kontext (z. B. einer Tabelle) verknüpft war und nicht mehr verknüpft ist, wird sie als „getrennt“ bezeichnet.
22. Was sind die vier ORM-Ebenen im Ruhezustand?
Im Folgenden sind die vier ORM-Stufen im Ruhezustand aufgeführt:
- Rein relational
- Lichtobjektkartierung
- Mittlere Objektzuordnung
- Vollständige Objektzuordnung
23. Was ist Transaktionsmanagement im Ruhezustand? Wie es funktioniert?
Bei der Transaktionsverwaltung handelt es sich um den Prozess der Verwaltung einer Reihe von Anweisungen oder Befehlen. Im Winterschlaf; Die Transaktionsverwaltung erfolgt über die Transaktionsschnittstelle, wie im folgenden Code gezeigt:
Session s = null;
Transaction tr = null;
try {
s = sessionFactory.openSession();
tr = s.beginTransaction();
doTheAction(s);
tr.commit();
} catch (RuntimeException exc) {
tr.rollback();
} finally {
s.close();
}
24. Welche beiden Methoden gibt es für die Konfiguration im Ruhezustand?
Wir können eine der beiden folgenden Methoden zur Konfiguration des Ruhezustands verwenden:
- XML-basierte Konfiguration (unter Verwendung der Datei hibernate.cfg.xml)
- Programmatische Konfiguration (unter Verwendung von Codelogik)
25. Was ist der Standard-Cache-Dienst von Hibernate?
Hibernate unterstützt mehrere Cache-Dienste wie EHCache, OSCache, SWARMCache und TreeCache und der Standard-Cache-Dienst von Hibernate ist EHCache.
26. Welche beiden Zuordnungszuordnungen werden im Ruhezustand verwendet?
Im Winterschlaf; Wir haben die folgenden zwei Arten von Zuordnungsbeziehungen zwischen Entitäten:
- Eins-zu-Eins-Vereinigung
- Viele-zu-viele-Vereinigung
27. Wozu dient die Hibernate QBC API?
Die Hibernate Query By Criteria (QBC)-API wird zum Erstellen von Abfragen durch Manipulation von Kriterienobjekten zur Laufzeit verwendet.
28. Auf wie viele Arten können Objekte im Ruhezustand aus der Datenbank abgerufen werden?
Hibernate bietet die folgenden vier Möglichkeiten zum Abrufen von Objekten aus der Datenbank:
- Verwenden von HQL
- Bezeichner verwenden
- Verwenden der Kriterien-API
- Verwendung von Standard-SQL
29. Wie wird der Primärschlüssel mithilfe des Ruhezustands erstellt?
Der Primärschlüssel der Datenbank wird in der Konfigurationsdatei hbm.xml angegeben. Der Generator kann auch verwendet werden, um anzugeben, wie der Primärschlüssel in der Datenbank erstellt wird.
Im folgenden Beispiel fungiert deptId als Primärschlüssel:
30. Wie können wir abgetrennte Objekte im Ruhezustand wieder anbringen?
Objekte, die getrennt wurden und nicht mehr mit persistenten Entitäten verknüpft sind, können durch Aufrufen der session.merge()-Methode der Sitzungsklasse wieder angehängt werden.
31. Welche verschiedenen Möglichkeiten gibt es, den Cache der zweiten Ebene im Ruhezustand zu deaktivieren?
Der Hibernate-Cache der zweiten Ebene kann auf eine der folgenden Arten deaktiviert werden:
- Indem Sie use_second_level_cache auf false setzen.
- Durch die Verwendung von CACHEMODE.IGNORE
- Verwendung des Cache-Anbieters als org.hibernate.cache.NoCacheProvider
32. Was sind ORM-Metadaten?
Die gesamte Zuordnung zwischen Klassen und Tabellen, Eigenschaften und Spalten, Java-Typen und SQL-Typen usw. ist in ORM-Metadaten definiert.
33. Welches ist die Standard-Transaktionsfabrik im Ruhezustand?
Bei Hibernate 3.2 ist die Standard-Transaktionsfabrik JDBCTransactionFactory.
34. Welche Rolle spielt JMX im Ruhezustand?
Java-Anwendungen und -Komponenten werden im Ruhezustand von einer Standard-API namens JMX API verwaltet. JMX bietet Tools für die Entwicklung effizienter und robuster verteilter, webbasierter Lösungen.
35. Wie können wir die Hibernate-Session-Factory an JNDI binden?
Die Hibernate-Sitzungsfactory kann an JNDI gebunden werden, indem Konfigurationsänderungen in der Datei hibernate.cfg vorgenommen werden.
36. Auf wie viele Arten können Objekte in Hibernate identifiziert werden?
Die Objektidentifizierung kann im Ruhezustand auf drei Arten erfolgen:
- Verwenden der Objektidentität: Verwenden des ==-Operators.
- Verwenden von Objektgleichheit: Verwenden der Methode equal().
- Verwendung der Datenbankidentität: Relationale Datenbankobjekte können identifiziert werden, wenn sie dieselbe Zeile darstellen.
37. Welche unterschiedlichen Abrufstrategien gibt es im Ruhezustand?
Im Ruhezustand stehen folgende Abrufstrategien zur Verfügung:
- Treten Sie dem Fetching bei
- Stapelabruf
- Wählen Sie „Abrufen“.
- Unterwählen Sie „Abrufen“.
38. Wie erfolgt die Zuordnung von Java-Objekten zu Datenbanktabellen?
Um Java-Objekte Datenbanktabellen zuzuordnen, benötigen wir Java-Beans-Eigenschaftsnamen, die mit den Spaltennamen einer Datenbanktabelle übereinstimmen. Dann wird die Zuordnung in der Datei hbm.xml wie folgt bereitgestellt:
39. Was sind abgeleitete Eigenschaften im Ruhezustand?
Abgeleitete Eigenschaften sind solche Eigenschaften, die keiner Spalte einer Datenbanktabelle zugeordnet sind. Solche Eigenschaften werden zur Laufzeit durch Auswertung beliebiger Ausdrücke berechnet.
40. Was versteht man unter einer benannten SQL-Abfrage im Ruhezustand und wie wird sie verwendet?
Benannte SQL-Abfragen sind solche Abfragen, die in der Zuordnungsdatei definiert sind und bei Bedarf überall aufgerufen werden.
Beispielsweise können wir eine SQL-Abfrage wie folgt in unsere XML-Zuordnungsdatei schreiben:
Dann kann diese Abfrage wie folgt aufgerufen werden:
List students = session.getNamedQuery("studentdetails")
.setString("TomBrady", name)
.setMaxResults(50)
.list();
41. Was ist der Unterschied zwischen der Methode „load()“ und „get()“ im Ruhezustand?
Load()-Methoden führen zu einer Ausnahme, wenn die erforderlichen Datensätze nicht in der Datenbank gefunden werden, während die get()-Methode null zurückgibt, wenn Datensätze mit der ID nicht in der Datenbank gefunden werden.
Idealerweise sollten wir die Load()-Methode also nur verwenden, wenn wir sicher sind, dass Datensätze für eine ID vorhanden sind.
42. Wozu dient die Versionseigenschaft im Ruhezustand?
Die Versionseigenschaft wird im Ruhezustand verwendet, um festzustellen, ob sich ein Objekt im Übergangszustand oder im getrennten Zustand befindet.
43. Was ist attributorientierte Programmierung?
Bei der attributorientierten Programmierung kann ein Entwickler Metadaten (Attribute) zum Java-Quellcode hinzufügen, um dem Code mehr Bedeutung zu verleihen. Für Java (Ruhezustand) wird die attributorientierte Programmierung durch eine Engine namens XDoclet ermöglicht.
44. Welchen Nutzen hat session.lock() im Ruhezustand?
Die Methode session.lock() der Sitzungsklasse wird verwendet, um ein zuvor getrenntes Objekt erneut anzuhängen. Diese Methode des erneuten Anhängens prüft beim erneuten Anhängen des Objekts nicht, ob eine Datensynchronisierung in der Datenbank vorliegt, und kann daher zu einer mangelnden Synchronisierung der Daten führen.
45. Unterstützt der Ruhezustand Polymorphismus?
Ja, der Ruhezustand unterstützt den Polymorphismus vollständig. Polymorphismusabfragen und Polymorphismusassoziationen werden in allen Mapping-Strategien von Hibernate unterstützt.
46. Was sind die drei Vererbungsmodelle des Ruhezustands?
Hibernate verfügt über die folgenden drei Vererbungsmodelle:
- Tabellen pro Betonklasse
- Tabelle pro Klassenhierarchie
- Tabelle pro Unterklasse
47. Wie können wir die Klassen als unveränderlich abbilden?
Wenn wir nicht möchten, dass eine Anwendung Objekte einer Klasse im Ruhezustand aktualisiert oder löscht, können wir die Klasse unveränderlich machen, indem wir mutable=false festlegen
48. Wie sieht der allgemeine Ruhezustand mit RDBMS aus?
Der allgemeine Ruhezustandsablauf mit RDBMS ist wie folgt:
- Konfigurationsdatei laden und Objekt der Konfigurationsklasse erstellen.
- Erstellen Sie mithilfe des Konfigurationsobjekts ein sessionFactory-Objekt.
- Erhalten Sie von sessionFactory eine Sitzung.
- Erstellen Sie eine HQL-Abfrage.
- Führen Sie eine HQL-Abfrage aus und erhalten Sie die Ergebnisse. Die Ergebnisse werden in Form einer Liste angezeigt.
49. Was ist Light Object Mapping?
Light Object Mapping ist eine der ORM-Qualitätsstufen, bei der alle Entitäten als Klassen dargestellt und manuell zugeordnet werden.
50. Was ist der Unterschied zwischen verwalteten Assoziationen und Hibernate-Assoziationen?
Verwaltete Zuordnungen beziehen sich auf die Persistenz der Containerverwaltung und sind bidirektional, während Ruhezustandszuordnungen unidirektional sind.
Diese Interviewfragen helfen auch bei Ihrer mündlichen Prüfung
Gute QNS-Sammlung …
Hervorragende Erklärung,,,,
Könnten Sie auch die folgenden Fragen hinzufügen?
Wie können wir gespeicherte Prozeduren im Ruhezustand aufrufen?
Was ist geordnete Sammlung und sortierte Sammlung?
Was ist ein persistenter Zustand?
Wie Dirty Checking konfiguriert ist
Rückrufschnittstelle konfigurieren
So lösen Sie ein Objekt ab
Was passiert, wenn ich ein transientes Objekt abtrenne?
Erklären Sie jede einzelne ORM-Ebene in Hibernate
So aktivieren/deaktivieren Sie Cahce der ersten und zweiten Ebene
Wie können wir die Ruhezustandssitzungsfabrik an JNDI binden?
Was ist der Unterschied zwischen der Methode „load()“ und „get()“ im Ruhezustand?
Unterschied zwischen session.lock() und session.merge()
Wie eine Klasse als unveränderlich zugeordnet wird und warum
Wie können wir neue benutzerdefinierte Schnittstellen verwenden, um die Funktionalität der integrierten Schnittstellen des Ruhezustands zu verbessern?
Hallo Administrator, es wird nützlich sein, wenn Sie diese Frage oder wichtigere MCQ-ähnliche Fragen für die Auswahlprüfung hinzufügen