Mi a hibernált?

Hivatalosan Hibernate ORM néven ismeretes objektum-relációs leképező eszköz vagy keret a Java programozási nyelv számára. Ez a GNU Lesser General Public License 2.1 alatt elérhető ingyenes szoftver. Célja, hogy keretet biztosítson a felhasználó számára az objektum-relációs impedancia leképezéséhez. Nagyon magas szintű objektumkezelési funkciókkal is kezeli a folyamatos adatbázis-eléréseket. Ez a java egy köztes verziója, amelyet objektum-relációs leképezéshez és az objektum hatékony perzisztencia végrehajtásához használnak.

Építészet

Ahhoz, hogy többet tudjon meg a hibernációról, meg kell értenünk annak architektúráját, amely a következőket foglalja magában:

  • A Java alkalmazáskód az összes osztályból, változóból és objektumból áll, amelyek meghatározzák az alkalmazás üzleti logikáját. Ezek az osztályok kommunikálnak a hibernátummal.
  • Ezután jön a Hibernátum és annak alapelvei, amelyek felhasználásával az adatbázis-kiszolgáló réteggel való kommunikációval fenn tudjuk tartani (tárolhatjuk, menthetjük és visszakereshetjük) üzleti rétegeink osztályainak objektumait.
  • A Java core API, Java Database Connectivity (JDBC), Java Transaction API (JTA), Java Naming és Directory Interface (JNDI) segítségével kommunikál az adatbázisgal annak érdekében, hogy az objektum állapota megmaradjon az olvasás, létrehozás, frissítés végrehajtásával., törölje (CRUD) műveleteket.

Alapvetően az adatbázishoz való kommunikációra használják. Itt csak néhány entitást hozunk létre, amely nem más, mint egy java osztály, amely létrehoz egy adatbázistáblát nekünk az adatbázisban.

Keretrendszer

Itt felmerül a kérdés, hogy miért használjuk a java hibernált keretrendszerét, ha már vannak a java alapelvei. Tehát itt van a válasz erre:

  • A legjobb JDBC fogalmak, például:
  1. Rowset a ResultSet helyett
  2. DataSource (kapcsolatkészlet) a DriverManager helyett
  3. Kötegelt műveletek az egyedi műveletek helyett
  4. PreparedStatement nyilatkozat helyett
  • A projekt fejlesztési költsége nagy tényezőre csökken.
  • Nincs memória szivárgás
  • Az olyan társulások kezelése, mint az egy a sokhoz stb., Egyszerű és könnyű, ha olyan gyűjtemény tulajdonságokkal dolgozik, mint a java.util.Set, List, Map.
  • Mivel ORM keret, a Hibernátum minden előnyeit megkapja:
  • Támogatja a második szintű gyorsítótárat
  • Az objektum rekordmá válik, és fordítva.
  • Ezenkívül támogatja az objektum lekérdezési nyelvet (HQL)
  • Több primer kulcs generátort támogat

A hibernált tulajdonságai

Tehát az egész a java hibernált kerettel és annak architektúrájával kapcsolatos, beszéljünk a legfrissebb hibernált istálló tulajdonságairól, melyeket 57 nappal ezelőtt, vagyis 2019. február 23-án adtak ki.

  • Támogatja a JMX-t és a JCA-t.
  • Ez a J2EE integráció egyik jellemzőjét biztosítja.
  • A rendszer inicializálásakor generál SQL-t.
  • Opcionálisan biztosíthat belső kapcsolatkészletet és elkészített utasítás-gyorsítótárat.
  • Támogatja az optimista zárolást verzióval.
  • Külső illesztést biztosít.
  • Bevezeti a Lazy inicializálást.
  • Biztosítja a munkamenet szintű gyorsítótárat és az opcionális második szintű gyorsítótárat.
  • Kétrétegű gyorsítótár-architektúrát biztosít.
  • Az elsődleges kulcs automatikus generálása.
  • Támogatja a kompozit kulcsok kemény koncepcióját.
  • Támogatja az elválasztott objektum koncepcióját.
  • Bevezeti az automatikus piszkos ellenőrzés koncepcióját.
  • Átlátható kitartást biztosít bájtkód-feldolgozás nélkül.
  • Objektum / relációs leképezéseket biztosít. Itt vannak különféle O / R leképezési stratégiák, mint több objektum az egysoros leképezéshez,
  • Polimorf asszociációk, kétirányú asszociáció, asszociációs szűrés. Ezenkívül XML leképezési dokumentumokat is biztosít.
  • Különböző objektum-orientált lekérdezési nyelveket biztosít.
  • Minimális objektum-orientált hibernált lekérdezési nyelv (HQL), natív SQL lekérdezések
  • Magas, objektumorientált kritériumok fogalma.

Miért használjuk a hibernált?

Itt volt a hibernálás legújabb jellemzői. Következőként felmerül a kérdés, hogy miért használjuk, tehát itt vannak az okok, miért inkább hibernáltunk:

  • Tranzakciókezelés
  • egyesületek
  • Öröklés
  • Hibernált gyorsítótár
  • Versioning
  • Ellenőrzési funkciók
  • A JPA kommentár támogatása
  • Összekapcsolás pooling
  • Kerülje el az elkapási blokkokat
  • Kerülje a lusta betöltést
  • Csökkenti az ismétlődő kódot

Előnyök

Mindent összefoglalva a hibernálásról, most itt az ideje, hogy megvitassuk a fő napirendet, mely a hibernált használat előnyei és hátrányai. A témát kezdve kezdjük a hibernálás előnyeivel, amelyek a következők:

  1. ORM - a karbantartás egyszerű és költséghatékony.
  2. Átlátszó perzisztencia
  3. Az adatbázis független
  4. HQL - A HQL olyan fejlett funkciói, mint például a lapozás és a dinamikus profilozás, nincsenek jelen az SQL-ben. Tehát hibernált állapotban használhatjuk.
  5. Kétrétegű gyorsítótár
  6. Verzió tulajdonság
  7. Nyílt forráskódú és ingyenes szoftver
  8. A skálázhatóság egyszerű
  9. Lusta-betöltés - A lusta-betöltési koncepció csak a szükséges objektumot tölti le, amely az alkalmazás végrehajtásához szükséges.
  10. Könnyű megtanulni
  11. Olyan gyűjteményeket is támogat, mint a Lista, Beállítás, Térkép.
  12. képesség elsődleges kulcsok előállítására
  13. A hibernált nyelvjárási osztályok
  14. Támogatja az olyan kapcsolatokat, mint az egy-sok, az egy-egy, a sok-sok-sok-sok, a sok az egynél

hátrányok

Az előnyök mellett a hibernálásnak kevesebb hátránya is van. Tehát itt vannak a hibernálás hátrányai:

  1. kicsit lassabb, mint a tiszta JDBC
  2. kazánlap kód kiadása
  3. sok SQL utasítást generál futási idő alatt
  4. A hibernátum nem alkalmas kötegelt feldolgozásra
  5. A hibernálás lassú, mert futási idő reflexiót használ
  6. Rengeteg API elsajátításához
  7. Néha a hibakeresés és a teljesítmény hangolása megnehezedik.
  8. Nem alkalmas kis projektekhez
  9. Nem engedélyezi a több betét beillesztését
  10. Számos összekapcsolódással bonyolult huzalokat generál
  11. A HQL lekérdezések nem hívhatják meg a PL / SQL programot

Következtetés

Tehát az összes lefedett téma mellett tudnunk kell a hibernáció jövőjét is. Azt mondhatjuk, hogy a Hibernátum sokkal hosszabb ideig továbbra is a domináns ORM eszköz, mivel a JPA gyorsan felzárkózik. Az a benyomásom, hogy a Hibernate a JPA legszélesebb körben alkalmazott megvalósítása (az OpenJPA és az EclipseLink előtt), és azt is, hogy a natív vagy az alap API még mindig erősebb, mint a JPA 2. Csak ezek miatt az okok miatt azt hiszem, hogy jó ideje fennáll idő. Nagyon előnyös, ha a tavaszi MVC-t hibernált állapotban használja, mivel ez a leginkább kompatibilis MVC. Az olyan perzisztencia-keretrendszer használata, mint a Hibernate, lehetővé teszi a fejlesztőknek, hogy pontos és jó perzisztenciaréteg írása helyett az üzleti logikai kód írására összpontosítsanak, amely magában foglalja az SQL lekérdezések, a JDBC kód, a kapcsolatkezelés stb. Írását. ez a legjelentősebb java keretrendszer, amelyet manapság használnak.

Ajánlott cikkek

Ez egy útmutató a Mi hibernált című részéhez. Itt a Hibernált építészetét, tulajdonságait, keretét, előnyeit és hátrányait tárgyaljuk. Lehet, hogy megnézi a következő cikkeket is, ha többet szeretne megtudni -

  1. Hibernált interjúkérdések
  2. Mi a NumPy?
  3. Mi az a nyitott kosár?
  4. 2 interjú kérdése
  5. Java elnevezési konvenciók

Kategória: