Pierwsza noc z Hibernate
Hibernate zafascynował mnie od chwili, gdy pierwszy raz ujrzałem dokumentacje. Zamieszczone przykłady obiecywały mi rozwiązanie najgorszych problemów programowania w PHP. Wczoraj spędziłem noc z Hibernate i muszę przyznać, że jestem zachwycony. Hibernate jest lepszy, niż to sobie wyobrażałem. Dokonałem cudu. Udało mi się osiągnąć to, co chciałem.
Hibernate to biblioteka programistyczna umożliwiająca mapowania obiektowo relacyjne.Każdy programista PHP zdaje sobie sprawę z konieczności pisania SQL, które będą pobierać dane z bazy, modyfikować rekordy lub robić inne dziwne operacje na relacjach. W PHP zwykle osadza się kod SQL gdzieś tam w skrypcie. Niekiedy, piszę się procedury, które budują bardziej skomplikowany kod SQL, po to tylko, żeby za moment wykonać go w bazie danych. Ten rodzaj pracy przyczynia się do powstawania błędów. Rozwiązaniem problemu, jest przeniesienie skryptów SQL do osobnego miejsca – wyodrębnie SQL od kodu PHP.
Hibernate rozwiązuje ten problem jeszcze lepiej. Nie trzeba pisać zapytań SQL. Wystarczy stworzyć obiekty, klasy Java, a następnie opisać w jakis sposób te obiekty mają być mapowane na pola w relacyjnej bazie danych. To hibernate dba o to, by w bazie danych znalazły się aktualne rekordy. Hibernate aktualizuje także strukturę bazy danych. Ze smutkiem przyznaje, że gigantyczna porcja mojej wiedzy dotyczącej programowania bazy PostgreSQL w obliczy technologi ORM jest mi właściwie zbędna. Ale jako początkujący programista ORM jestem w stanie napisać lepszy program, niż jako zaawansowany programista PostgreSQL.