Az 50 legjobb hibernált interjúkérdés (2025)

Íme a Hibernate interjú kérdései és válaszai pályakezdőknek és tapasztalt jelölteknek álmaik állása megszerzéséhez.


1. Mi az a hibernált állapot?

A Hibernate a Java népszerű keretrendszere, amely hatékony objektumrelációs leképezést tesz lehetővé XML formátumú konfigurációs fájlok használatával. A Java objektumok adatbázistáblákra való leképezése után az adatbázist a rendszer Java objektumokkal használja és kezeli összetett adatbázis-lekérdezések írása nélkül.

Ingyenes PDF letöltés: Hibernált interjú kérdések és válaszok


2. Mi az ORM?

Az ORM (Object Relational Mapping) a Hibernate keretrendszer alapkoncepciója, amely leképezi az adatbázistáblákat Java objektumokkal, majd különféle API's különböző típusú műveletek végrehajtásához az adattáblákon.


3. Hogyan vannak leképezve egy osztály tulajdonságai egy adatbázistábla oszlopaira hibernált állapotban?

Az osztálytulajdonságok és a táblázat oszlopai közötti leképezések a következőben vannak megadva XML fájl az alábbi példában látható módon:


4. Mire használható a konfigurációs felület hibernált állapotban?

A hibernált keretrendszer konfigurációs felülete a hibernált állapot konfigurálására szolgál. Az is szokott bootstrap Hibernálás. A hibernált állapot leképezési dokumentumai ezen a felületen találhatók.


5. Hogyan használhatunk új egyéni interfészeket a hibernált beépített interfészek funkcionalitásának javítására?

Bővítő interfészek segítségével bármilyen olyan szükséges funkciót hozzáadhatunk, amelyet a beépített interfészek nem támogatnak.

Hibernált interjúkérdések
Hibernált interjúkérdések

6. A hibernate összes leképezési fájljának .hbm.xml kiterjesztéssel kell rendelkeznie, hogy megfelelően működjön?

Nem, a .hbm.xml kiterjesztése megállapodás és nem követelmény a hibernált leképezési fájlneveknél. Bármilyen kiterjesztéssel rendelkezhetünk ezekhez a leképezési fájlokhoz.


7. Hogyan hozhatunk létre munkamenet-gyárat hibernált állapotban?

hibernált interjúkérdések
téli álmot alszik

A munkamenetgyár hibernált állapotában történő létrehozásához először létrejön egy konfigurációs objektum, amely a konfigurációs fájl elérési útjára hivatkozik, majd ehhez a konfigurációhoz létrejön a munkamenetgyár, az alábbi példában látható módon:

Configuration config = new Configuration();
config.addResource("myinstance/configuration.hbm.xml");
config.setProperties( System.getProperties() );
SessionFactory sessions = config.buildSessionFactory();

8. Mik azok a POJO-k és mi a jelentőségük?

A POJO-k (Sima Old Java Objects) olyan java komponensek, amelyek minden egyes tulajdonsághoz megfelelő getter és setter metódusokkal rendelkeznek.
A POJO-k használata egyszerű java osztályok helyett hatékony és jól felépített kódot eredményez.


9. Mi az a HQL?

A HQL a Hibernate-ban használt lekérdezési nyelv, amely a kiterjesztése SQL. A HQL egy nagyon hatékony, egyszerű és rugalmas lekérdező nyelv, amellyel különféle típusú műveleteket hajthat végre relációs adatbázisokon anélkül, hogy összetett adatbázis-lekérdezéseket írna.


10. Hogyan hívhatjuk meg a tárolt eljárásokat hibernált állapotban?

Hibernált állapotban a tárolt eljárásokat az alábbi kóddal hajthatjuk végre:


11. Mi az a kritérium API?

A Criteria egy egyszerű, de hatékony hibernálási API, amelyet az entitások lekérésére használnak a feltételobjektum-összetételen keresztül.


12. Milyen előnyei vannak a Hibernate sablon használatának?

Íme néhány fő előnye a hibernált sablon használatának:
a. A munkamenet zárása automatizált.
b. A hibernált munkamenettel való interakció leegyszerűsödik.
c. A kivételek kezelése automatizált.


13. Hogyan láthatjuk a hibernált állapotban generált SQL-t a konzolon?

A következőket kell hozzáadnunk a hibernált konfigurációs fájlhoz, hogy engedélyezzük az SQL megtekintését a konzolon hibakeresési célból:


14. Mi a két típusú gyűjtemény hibernált állapotban?

A következő két típusú gyűjtemény hibernált állapotban van:

  1. Rendezett gyűjtemény
  2. Rendelés Gyűjtemény


15. Mi a különbség a session.save() és a session.saveOrUpdate() metódusok között hibernált állapotban?

Sessionsave() metódus csak akkor ment el egy rekordot, ha az egyedi az elsődleges kulcshoz képest, és nem sikerül beszúrni, ha az elsődleges kulcs már létezik a táblában.
saveOrUpdate() metódus új rekordot szúr be, ha az elsődleges kulcs egyedi, és frissít egy meglévő rekordot, ha az elsődleges kulcs már létezik a táblában.


16. Milyen előnyökkel jár a hibernált állapot? JDBC?

  • A Hibernate zökkenőmentesen használható bármilyen típusú adatbázissal, mivel az adatbázis független, míg a JDBC esetében a fejlesztőnek adatbázis-specifikus lekérdezéseket kell írnia.
  • A hibernált állapot használatával a fejlesztőnek nem kell szakértőnek lennie az összetett lekérdezések írásában, mivel a HQL leegyszerűsíti a lekérdezésírási folyamatot, míg a JDBC esetében a fejlesztő feladata a lekérdezések írása és hangolása.
  • Hibernált állapot esetén nincs szükség kapcsolati készletek létrehozására, mivel a hibernálás minden kapcsolatkezelést automatikusan végez, míg JDBC esetén kapcsolatkészleteket kell létrehozni.

17. Hogyan kaphatunk hibernált statisztikákat?

Hibernálási statisztikákat kaphatunk a SessionFactory osztály getStatistics() metódusával, az alábbiak szerint:

SessionFactory.getStatistics()

18. Mit jelent a tranziens példányállapot hibernált állapotban?

Ha egy példány nincs állandó kontextushoz társítva, és soha nem volt társítva semmilyen állandó kontextushoz, akkor átmeneti állapotúnak mondják.


19. Hogyan csökkenthetjük az adatbázis írási műveleti idejét hibernált állapotban?

A Hibernate piszkos ellenőrzési funkciót biztosít, amellyel csökkenthető az adatbázis írási ideje. A hibernált állapot piszkos ellenőrző funkciója csak azokat a mezőket frissíti, amelyek módosításra szorulnak, míg a többit változatlanul hagyja.


20. Mire használják a visszahívási felületeket hibernált állapotban?

A hibernált visszahívási felületek hasznosak az objektumok eseményértesítéseinek fogadásához. Például egy objektum betöltésekor vagy törlésekor a rendszer eseményt generál, és értesítést küld a visszahívási felületeken.


21. Amikor egy példány leválasztott állapotba kerül hibernált állapotban?

Ha egy példányt korábban valamilyen állandó kontextushoz (pl. táblához) társítottak, és már nincs társítva, akkor a rendszer leválasztott állapotba kerül.


22. Mi a négy ORM szint hibernált állapotban?

A következő négy ORM-szint hibernált állapotban van:

  • Pure Relational
  • Light Object Mapping
  • Közepes objektumleképezés
  • Teljes objektum-leképezés

23. Mit jelent a tranzakciókezelés hibernált állapotban? Hogyan működik?

A tranzakciókezelés az utasítások vagy parancsok halmazának kezelésének folyamata. hibernált állapotban; A tranzakciókezelés a tranzakciós felületen történik, az alábbi kód szerint:

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. Mi a két módszer a hibernált konfigurációhoz?

A következő két hibernált konfigurálási mód bármelyikét használhatjuk:

  1. XML alapú konfiguráció (hibernate.cfg.xml fájl használatával)
  2. Programozott konfiguráció (kódlogika használatával)

25. Mi a hibernált alapértelmezett gyorsítótár szolgáltatása?

A Hibernate több gyorsítótár-szolgáltatást is támogat, például az EHCache-t, az OSCache-t, a SWARMCache-t és a TreeCache-t, a hibernált állapot alapértelmezett gyorsítótár-szolgáltatása pedig az EHCache.


26. Mi a hibernált állapotban használt két leképezési asszociáció?

hibernált állapotban; az entitások között a következő kétféle leképezési társítás létezik:

  1. Egy-egy Egyesület
  2. Sok-sok egyesület

27. Mire használható a Hibernate QBC API?

Hibernate Query By Criteria (QBC) API használható lekérdezések létrehozására a feltételobjektumok futás közbeni manipulálásával.


28. Hányféleképpen lehet objektumokat lekérni az adatbázisból hibernált állapotban?

A Hibernate a következő négy módot kínálja az objektumok adatbázisból való lekérésére:

  • HQL használata
  • Azonosító használata
  • Criteria API használata
  • Standard SQL használata

29. Hogyan jön létre az elsődleges kulcs a hibernálással?

Az adatbázis elsődleges kulcsa a hbm.xml konfigurációs fájlban van megadva. A Generátor használható annak meghatározására is, hogy az elsődleges kulcs hogyan kerüljön létrehozásra az adatbázisban.
Az alábbi példában a deptId elsődleges kulcsként működik:


30. Hogyan csatlakoztathatjuk vissza a leválasztott objektumokat hibernált állapotban?

Azok az objektumok, amelyeket leválasztottak és már nem kapcsolódnak állandó entitásokhoz, a session.merge() metódus session osztályának meghívásával újra csatolhatók.


31. Milyen különböző módokon tilthatja le a hibernált második szintű gyorsítótárat?

A hibernált második szintű gyorsítótár a következő módok bármelyikével letiltható:

  • A use_second_level_cache hamis értékre állításával.
  • A CACHEMODE.IGNORE használatával
  • A gyorsítótár-szolgáltató használata org.hibernate.cache.NoCacheProvider néven

32. Mi az ORM metaadat?

Az osztályok és táblák, tulajdonságok és oszlopok, Java típusok és SQL típusok stb. közötti összes leképezést az ORM metaadatok határozzák meg.


33. Melyik az alapértelmezett tranzakciógyár hibernált állapotban?

Hibernate 3.2 esetén az alapértelmezett tranzakciógyár a JDBCTransactionFactory.


34. Mi a JMX szerepe hibernált állapotban?

A Java-alkalmazásokat és -összetevőket hibernált állapotban egy szabványos, JMX API-nak nevezett API kezeli. A JMX eszközöket biztosít hatékony és robusztus elosztott, web alapú megoldások fejlesztéséhez.


35. Hogyan köthetjük a hibernált munkamenet-gyártót a JNDI-hez?

A Hibernate session factory a hibernate.cfg fájl konfigurációs módosításával kapcsolódhat a JNDI-hez.


36. Hányféleképpen azonosíthatók az objektumok hibernált állapotban?

Az objektumok azonosítása hibernált állapotban a következő három módon történhet:

  • Object Identity használata: == operátor használata.
  • Objektumegyenlőség használata: Az equals() metódus használata.
  • Adatbázis-identitás használata: A relációs adatbázis-objektumok azonosíthatók, ha ugyanazt a sort képviselik.

37. Milyen különböző lekérési stratégiák léteznek hibernált állapotban?

A következő lekérési stratégiák érhetők el hibernált állapotban:

  1. Csatlakozz a Lekéréshez
  2. Kötegelt letöltés
  3. Válassza a Lekérést
  4. Alul válassza ki a Lekérést

38. Hogyan történik a java objektumok leképezése adatbázistáblákkal?

Java objektumok adatbázistáblákkal való leképezéséhez a Java komponensek tulajdonságainak nevei megegyeznek az adatbázistábla oszlopneveivel. Ezután a leképezés a hbm.xml fájlban található az alábbiak szerint:


39. Mik a származtatott tulajdonságok hibernált állapotban?

A származtatott tulajdonságok azok a tulajdonságok, amelyek nincsenek leképezve egy adatbázistábla egyetlen oszlopára sem. Az ilyen tulajdonságok kiszámítása futás közben történik bármely kifejezés kiértékelésével.


40. Mit jelent hibernált állapotban lévő Named SQL Query, és hogyan használják?

A nevesített SQL lekérdezések azok a lekérdezések, amelyek a leképezési fájlban vannak definiálva, és bárhol szükség szerint meghívásra kerülnek.
Például a következőképpen írhatunk egy SQL-lekérdezést az XML-leképezési fájlunkba:

Ezután ez a lekérdezés a következőképpen hívható meg:

List students = session.getNamedQuery("studentdetails")
.setString("TomBrady", name)
.setMaxResults(50)
.list();

41. Mi a különbség a load() és a get() metódus között hibernált állapotban?

A Load() metódus kivételt eredményez, ha a szükséges rekordok nem találhatók az adatbázisban, míg a get() metódus nullát ad vissza, ha az azonosítóhoz tartozó rekordok nem találhatók az adatbázisban.
Tehát ideális esetben csak akkor használjuk a Load() metódust, ha biztosak vagyunk a rekordok létezésében egy azonosítóval szemben.


42. Mire használható a verzió tulajdonság hibernált állapotban?

A Version tulajdonságot hibernált állapotban használják annak megállapítására, hogy egy objektum átmeneti vagy leválasztott állapotban van-e.


43. Mi az attribútum orientált programozás?

Az attribútum-orientált programozásban a fejlesztő metaadatokat (attribútumokat) adhat hozzá a Java forráskódhoz, hogy nagyobb jelentőséget adjon a kódnak. Java (hibernált) esetén az attribútumorientált programozást az XDoclet nevű motor engedélyezi.


44. Mire jó a session.lock() hibernált állapotban?

A session.lock() metódus a session class egy korábban leválasztott objektum visszacsatolására szolgál. Ez az újracsatolási módszer nem ellenőrzi az adatok szinkronizálását az adatbázisban az objektum újracsatolása közben, és így az adatok szinkronizálásának hiányához vezethet.


45. Támogatja-e a hibernált állapot a polimorfizmust?

Igen, a hibernált állapot teljes mértékben támogatja a polimorfizmust. A polimorfizmus-lekérdezések és a polimorfizmus-asszociációk a hibernált állapot összes leképezési stratégiájában támogatottak.


46. ​​Mi a hibernált három öröklődési modell?

A Hibernate a következő három öröklési modellel rendelkezik:

  1. Táblázatok betonosztályonként
  2. Osztályhierarchiánkénti táblázat
  3. táblázat alosztályonként

47. Hogyan térképezhetjük fel az osztályokat változhatatlannak?

Ha nem akarjuk, hogy egy alkalmazás frissítse vagy törölje egy hibernált osztály objektumait, megváltoztathatatlanná tehetjük az osztályt a mutable=false beállításával.


48. Mi az általános hibernált folyamat az RDBMS használatával?

Az RDBMS-t érintő általános hibernált folyamat a következő:

  • Töltse be a konfigurációs fájlt, és hozza létre a konfigurációs osztály objektumát.
  • A konfigurációs objektum használatával hozzon létre sessionFactory objektumot.
  • A sessionFactoryból szerezzen be egy munkamenetet.
  • HQL lekérdezés létrehozása.
  • Hajtsa végre a HQL lekérdezést, és kapja meg az eredményeket. Az eredmények lista formájában jelennek meg.

49. Mi az a Light Object Mapping?

A Light Object Mapping az ORM minőség egyik szintje, amelyben minden entitás osztályként van ábrázolva, és manuálisan leképeződik.


50. Mi a különbség a felügyelt társítások és a hibernált társítások között?

A felügyelt társítások a konténerkezelés tartósságára vonatkoznak, és kétirányúak, míg a hibernált társítások egyirányúak.


Ezek az interjúkérdések a viva-ban is segítenek.

Megosztás

4 Comments

  1. Avatar Bipil Raut - Szoftverfejlesztő mondja:

    Kiváló magyarázat,,,,

  2. Avatar Kranthi mondja:

    Feltehetnéd az alábbi kérdéseket is

    Hogyan hívhatjuk meg a tárolt eljárásokat hibernált állapotban?
    Mit rendelt gyűjtés és válogatás
    mi a tartós állapot
    Hogyan van beállítva a piszkos ellenőrzés
    Konfigurálja a visszahívási felületet
    Hogyan lehet egy tárgyat leválasztani
    mi történik, ha leválasztom az átmeneti objektumot
    magyarázza el a hibernált állapot minden egyes ORM szintjét
    Első és második szintű cahce engedélyezése/letiltása
    Hogyan köthetjük a hibernált munkamenet-gyárat a JNDI-hez?
    Mi a különbség a load() és a get() metódus között hibernált állapotban?
    különbség a session.lock() és a session.merge() között
    Hogyan van leképezve egy osztály megváltoztathatatlannak és miért
    Hogyan használhatunk új egyéni interfészeket a hibernált beépített interfészek funkcionalitásának javítására?

    1. Avatar Mehul patel mondja:

      Hé, admin Hasznos lesz, ha hozzáadja ezt a kérdést vagy fontosabb mcq-szerű kérdéseket a versenyvizsgához

Hagy egy Válaszol

E-mail címed nem kerül nyilvánosságra. Kötelező kitölteni *