Hibernate je objektovo-relačný databázový framework, ktorý rieši jednu veľmi dôležitú vec: oddeľuje tvorbu samotných SQL dotazov / queries od výkonného kódu aplikácie. Používaním frameworku Hibernate abstrahujete databázovú vrstvu – nie je v aplikácií vôbec vidieť. Vôbec neriešite syntax konkrétnych SQL dotazov.
Java Database Connectivity (JDBC) predstavuje rozhranie v Jave pre prácu s databázami. Veľká výhoda JDBC je v tom, že v Jave abstrahuje použitie konkrétnej databázy. V podstate pri práci s JDBC nemusíte presne vedieť ako sa pripojiť na MySQL, MariaDB alebo PostgreeSQL.
Pri tvorbe samotných dotazov – pokiaľ nejdete podľa SQL štandardov – ale využívate príkazy špecifické pre samotný databázový stroj, potrebujete dodazy prispôsobiť pre daný databázový server RDMBS (Relational Database Management System).
To je práve limitácia JDBC. Keď pracujete s JDBC, tak aplikáciu píšete presne na konkrétny sever. Navyše, v kóde aplikácie máte SQL príkazy... a to je ... ehm... nepekné.
Framework Hibernate má práve výhodu v tom, že je to framework typu ORM (Object Relational Mapping). To znamená, že v Hibernate už nepracujete zo SQL dotazmi, ale používate klasické Java triedy / klassy.
Slovo klasické nehovorím len tak – ide o klasy, ktoré sú typu POJO (Plain Old Java Object), čo sú v podstate jednoduché objekty, ktoré sa veľmi jednoducho inicializujú cez konštruktor bez parametrov, vlastnosti sa nastavujú pomocou getterov a setterov. Ak tieto objekty napojíte na ORM Hibernate, tak máte vyhrané. Ten sa už postará o to, aby zmeny vo vašich POJO objektoch sa premietli do samotnej relačnej databázy.
A navyše: programovanie vo frameworku Hibernate je nezávislé na konkrétnej implementácií RDBMS servera (viď vyššie). To znamená, že veľmi jednoducho (a to je veľmi podstatné), viete migrovať na rozdielnej verzie v rámci databázových serverov toho istého typu. Ba čo viac, veľmi jednoducho viete migrovať aj medzi rôznymi RDBMS / databázovými servermi.
Javácke appky napísané v Hibernate sa podstatne ľahšie udržujú, ako appky napísané v JDBC. Už len z veľmi jednoduchého dôvodu. Hibernate oddeľuje biznis logiku od SQL. A tým sa zdrojové kódy javy stávajú prehľadnejšími. Prehľadnosť kódu v Jave je pre Java teamleadera a projektového manažéra dôležitá v tom, že sa programátorom ľahšie / efektívnejšie robia zmeny v kóde – teda zapracovávajú nové požiadavky. Appka je ľahšie / efektívnejšľie udržateľná a sa podstatne jednoduchšie ladia prípadné chyby.
Hurá, nech žije Hibernate!
Úvod do programovania pre každého bez prechádzajúcich znalostí.
Stiahnite so náš ebook teraz výnimočne zdarma!!!