Hibernate in Action
Knihu Hibernate in Action jsem přelouskával (s určitými přestávkami) po večerech pár měsíců. Zpočátku jsem ji používat pouze jako referenční příručku – nahlížel jsem do ní pouze když jsem potřebaval zjistit řešení nějakého problému. Po přečtení několika fragmentů kódu jsem zjistil, že bude dobré přečíst si knihu celou.
S odstupem času musím dát za pravdu podtitulu knihy – A guide to the concepts and practise of object/relational mapping. Hned v první kapitole Understanding object/relational persistence kniha vysvětluje základní přístupy a problémy při mapování objektů do relační databáze.
Nechci zde uvádět popis každé kapitoly, pouze v několika bodech zmíním co všechno se lze v knize dozvědět:
- typy vazeb mezi objekty a velmi detailní popis jejich mapování v Hibernatu včetně příkladů
- různé způsoby performance tunningu (batch fetchning, outer join, query cache)
- popis Hibernate Session a SessionFactory
- popis lifecyclu persistentních objektů
- popis first a second level cache Hibernatu
- konkurenční přístup k datům a strategie řešení tohoto problémů
- transakce
- podrobný popis nástrojů, které pomáhají urychlit vývoj softwaru pomocí Hibernatu a také pomáhají udržet konzistentní mode napříč všemi úrovněmi datového modelu. Mám na mysly DDL, hibernatí HBM souboru a POJOs. Ukázáno je i použítí XDocletu.
Zárukou kvality knihou jsou i její autoři. Christian Bauer napsal i další publikace o Javě – například Java Persistence with Hibernate. Gavin King je samotným autorem Hibernatu.
Závěr
Jak je z předchozích řádků vidět – kniha se mi libila s všem začínajícím programátorům, koho výraz ORM se spojení s jakou zajímá, ji doporučuji k přečtení.
Během čtení knihy jsem naprogramoval PHP based ORM framework eVent, který jsme ve Venturii s úspěchem použili na více než desítce projektů. Umí toho sice zlomek toho co Hibernate, ale z velké části pokrývá naše potřeby. Mezi zajímavé vlastnosti patří automatické generování UI a validačního kódu pro doménové objekty. Jen pro zajímavost – metainformace má eVent uložen přímo ve zdrojovém kódu doménových objektů – v komentářích. PHP od verze 5.1 umí pomocí reflexe přistupovat ke komentářům. Funguje to tedy podobně jako vzpomínaný XDoclet s tím rozdílem, že XDoclet má své místo při compile-timu a eVent ke komentářům přistupuje při runtimu.
Informace o knize
- Název
- Hibernate in Action
- Autoři
- Christian Bauer, Gavin King
- Vydal
- Manning Publications Co.
- ISBN
- 1932394–15-X
- Datum vydání
- 2005
- Počet stran
- 400
Celý článek 3 komentářů 24. April 2007