Entiendo que JPA 2 es una especificación e Hibernate es una herramienta para ORM. Además, entiendo que Hibernate tiene más funciones que JPA 2. Pero desde un punto de vista práctico, ¿cuál es realmente la diferencia?
Tengo experiencia en el uso de iBatis y ahora estoy tratando de aprender Hibernate o JPA2. Recogí el libro Pro JPA2 y sigue refiriéndose al "proveedor de JPA". Por ejemplo:
Si cree que una función debería estar estandarizada, debe hablar y solicitarla a su proveedor de JPA
Esto me confunde, así que tengo algunas preguntas:
- Usando JPA2 solo, ¿puedo obtener datos de DB simplemente anotando mis POJO
- ¿Se supone que JPA2 se debe usar con un "Proveedor JPA", por ejemplo, TopLink o Hibernate? Si es así, ¿cuál es el beneficio de usar JPA2 + Hibernate en comparación con JPA2 solo o en comparación con Hibernate solo?
- ¿Me puede recomendar un buen libro práctico JPA2. "Pro JPA2" parece más una biblia y una referencia en JPA2 (no entra en consultas hasta la mitad posterior del libro). ¿Hay un libro que adopte un enfoque de problema / solución para JPA2?