No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

15 Días
13 Hrs
48 Min
41 Seg
Curso de Java SE: SQL y Bases de Datos

Curso de Java SE: SQL y Bases de Datos

Ana Fernanda Gutierrez Villanueva

Ana Fernanda Gutierrez Villanueva

¿Qué es JPA y ORM?

19/22
Recursos

JPA (Java Persistence API) y JDBC (Java Database Connectivity) son dos tecnologías utilizadas en Java para interactuar con bases de datos. A continuación, te explicaré las diferencias principales entre ambas:

  1. Nivel de abstracción:
    • JDBC: Es una API de bajo nivel que proporciona un conjunto de clases e interfaces para acceder a bases de datos directamente. Requiere escribir código manualmente para establecer conexiones, enviar consultas SQL y manejar el procesamiento de resultados.
    • JPA: Es una API de alto nivel que proporciona una capa de abstracción adicional sobre JDBC. Permite trabajar con objetos Java de manera transparente y mapearlos a tablas en la base de datos. JPA se basa en el patrón de diseño ORM (Object-Relational Mapping) para facilitar la persistencia y recuperación de objetos.
  2. Mapeo objeto-relacional:
    • JDBC: No ofrece soporte nativo para el mapeo objeto-relacional. Los resultados de las consultas se obtienen en forma de conjuntos de filas y columnas de la base de datos, y el desarrollador debe procesar manualmente estos resultados y mapearlos a objetos Java.
    • JPA: Proporciona un mecanismo de mapeo objeto-relacional automático. Utiliza anotaciones o archivos XML para establecer relaciones entre las clases Java y las tablas de la base de datos. Los objetos se pueden guardar, actualizar, eliminar y consultar directamente sin la necesidad de escribir consultas SQL.
  3. Productividad y mantenibilidad:
    • JDBC: Al ser una API de bajo nivel, el desarrollo con JDBC puede ser más tedioso y propenso a errores. Requiere escribir una cantidad significativa de código manualmente para realizar operaciones básicas en la base de datos. Además, cualquier cambio en el esquema de la base de datos puede requerir modificaciones en el código JDBC.
    • JPA: Al proporcionar una capa de abstracción más alta y un mapeo objeto-relacional automático, JPA simplifica el desarrollo y mejora la productividad. Permite escribir menos código y facilita el mantenimiento, ya que los cambios en el esquema de la base de datos se pueden reflejar en las clases Java a través del mapeo.
  4. Portabilidad:
    • JDBC: Al ser una API estándar de Java, JDBC es ampliamente compatible y se puede utilizar con la mayoría de los sistemas de gestión de bases de datos (DBMS) disponibles.
    • JPA: JPA es una especificación de Java EE y, aunque se basa en JDBC, requiere un proveedor de persistencia específico (como Hibernate o EclipseLink) para interactuar con la base de datos. Aunque muchos proveedores son compatibles con JPA, puede haber diferencias en las características y el rendimiento entre ellos.

En resumen, JPA proporciona una capa de abstracción más alta, un mapeo objeto-relacional automático y una mayor productividad en comparación con JDBC. Sin embargo, si se requiere un mayor control y rendimiento a nivel de base de datos, JDBC puede ser más adecuado.

Aportes 3

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Les dejo un resumen de la comparacion de JDBC vs JPA
JPA ofrece una abstracción más alta, mapeo objeto-relacional automático y mejora la productividad en comparación con JDBC. Sin embargo, JDBC es más adecuado cuando se necesita un mayor control y rendimiento a nivel de base de datos y no se requiere la abstracción de objetos proporcionada por JPA. 😃

No me aparece nada en los recursos
Estupenda información. Anteriormente lo use pero no entendi muy bien. Ahora ya me es claro.