ORM w Javie

Szybko zrezygnowałem z JDBC na rzecz Hibernate tylko dlatego, że gdzieś obił mi się o uszy. Czy polecacie jakieś inne ORM Javowe? Może JPA? Albo Top-Link? Dlaczego?

  • JPA to technologia wprowadzona do JavaEE. Generalnie JPA to fajna sprawa. Jego potęga polega na tym, że jest intefejsem - czyli korzystając z dowolnej implementacji, możemy ją potem przepiąć na inną, bez większej pracy. Najbardziej znane implementacje JPA:
    - Hibernate,
    - TopLink,
    - EclipsLink,
    - OpenJPA

    Osobiście polecam Hibernate bo jest najszerzej wykorzystywany i jest dużo dokumentacji na jego temat. Za TopLink stoi Oracle, za EclipseLink Eclipse Fundation, a OpenJPA to Apache - czyli wszystie bardzo silne organizacje i stowarzyszenia.

  • Moim zdaniem najlepiej jest używać Hibernate z tego względu, że dużo więcej ludzi z niego korzysta, a co za tym idzie przy większych problemach istnieje szansa jego szybszego rozwiązania. Poza tym Hibernate został opracowany także dla C#, więc jeśli ktoś by się chciał przesiąść na platformę .Net to powinno być łatwiej.

  • JPA to API a Hibernate i Toplink oferuja implementacje JPA.

    Cokolwiek nie wybierzesz i tak na jedno wyjdzie. Jedyna roznica to ze z innymi rzeczami bedziesz mial klopoty w jednym a z innymi w drugim.

    Ja uzywam Toplinka. Dlaczego? Tak jest akurat politycznie poprawnie.

Zaloguj się, aby dodać swoją odpowiedź