Archivo de Etiquetas de 'jdo'

Elegir un ORM en Java

Tres personas me han preguntado últimamente porque ORM (Object-Relational Mapping) escoger para sus proyectos Java. A los tres les he contestado lo mismo, así que por si sirve de algo a alguien, dejaré aquí la respuesta.

Siendo honestos (en términos de uso, perspectiva de futuro, etc.) las opciones son pocas en este caso, al menos a día de hoy. Básicamente dos:

  • Hibernate
  • JDO 2.0

Hibernate es sin duda el rey. El más usado, existe muchísima documentación, probado y más que probado, etc. Lo que quieras. Sin embargo mi recomendación es para JDO 2, por estas tres razones básicamente:

  • Estándar: quieras que no, Hibernate sólo hay uno, implementaciones de JDO, no. Puedes pasar de una a otra (incluso libres) sin grandes problemas.
  • Sencillez: opinión personal, pero JDO 2.0 es mucho más sencillo. Quieras que no es más moderno, se ha aprendido de errores, incluso Gavin King (el creador de Hibernate) ha puesto su granito de arena para que esto sea así. Te puede gustar más o menos la forma, pero es más sencilla.
  • Futuro: el API de JDO 2.0 es casi exacto al API de EJB 3 (para los despistados: olvidar todo lo que sabéis de EJBs), aprender JDO 2.0 es aprender EJB 3.0. De hecho, el propio Hibernate va a soportar este API en futuras versiones.


Esas son mis razones a favor de JDO. En contra… sólo una…. la escasez de documentación. Es suficiente para hacer de todo (relaciones, attach/detach complejos, queries de todo tipo, cachés, etc), pero debido a su juventud la cantidad de artículos es bastante más reducida.


¿Comentarios?.



Close
E-mail It