Requisito previo: JDBC
Necesidad de Hibernate Framework
Hibernate se usa para superar las limitaciones de JDBC como:
- El código JDBC depende del software de base de datos que se utilice, es decir, nuestra lógica de persistencia depende del uso de JDBC. Aquí estamos insertando un registro en la tabla de empleados, pero nuestra consulta depende del software de la base de datos, es decir, aquí estamos usando MySQL. Pero si cambiamos nuestra base de datos, esta consulta no funcionará.
- Si se trabaja con JDBC, cambiar la base de datos en medio del proyecto es muy costoso.
- El código JDBC no es un código portátil en el software de base de datos múltiple.
- En JDBC, el manejo de excepciones es obligatorio. Aquí podemos ver que estamos manejando muchas excepciones para la conexión.
- Mientras se trabaja con JDBC, no hay soporte para la relación a nivel de objeto.
- En JDBC, se produce un problema repetitivo, es decir, para todos y cada uno de los proyectos tenemos que escribir el siguiente código. Eso aumenta la longitud del código y reduce la legibilidad.
Para superar los problemas anteriores, usamos la herramienta ORM, es decir, nada más que el marco de Hibernate. Al usar Hibernate podemos evitar todos los problemas anteriores y podemos disfrutar de un conjunto adicional de funcionalidades.
Acerca del marco de Hibernate
Hibernate es un marco que proporciona una capa de abstracción , lo que significa que el programador no tiene que preocuparse por las implementaciones, Hibernate hace las implementaciones por usted internamente, como establecer una conexión con la base de datos, escribir consultas para realizar operaciones CRUD, etc.
Es un marco Java que se utiliza para desarrollar lógica de persistencia. La lógica de persistencia significa almacenar y procesar los datos para un uso prolongado. Más precisamente, Hibernate es un marco Java ORM (Mapeo relacional de objetos) de código abierto, no invasivo y liviano para desarrollar objetos que son independientes del software de la base de datos y hacer una lógica de persistencia independiente en todo JAVA, JEE.
Framework significa que es un software especial instalable que proporciona una capa de abstracción en una o más tecnologías como JDBC, Servlet, etc. para simplificar o reducir la complejidad del proceso de desarrollo.
Código abierto significa:
- El marco de Hibernate está disponible para todos sin costo alguno.
- El código fuente de Hibernate también está disponible en Internet y también podemos modificar el código.
Peso ligero significa:
- Hibernate tiene menos tamaño, lo que significa que el paquete de instalación no es grande.
- Hibernate no requiere ningún contenedor pesado para su ejecución.
- No requiere programación de modelos POJO y POJI.
- Hibernate se puede usar solo o podemos usar Hibernate con otra tecnología y marco de Java.
Medios no invasivos:
- Las clases de desarrollo de aplicaciones de Hibernate son clases débilmente acopladas con respecto a la API de Hibernate, es decir, la clase de Hibernate no necesita implementar interfaces de API de hibernación y no necesita extenderse de las clases de API de Hibernate.
Funcionalidades compatibles con el marco de Hibernate
- El marco de Hibernate admite operaciones DDL automáticas . En JDBC manualmente, tenemos que crear una tabla y declarar el tipo de datos para todas y cada una de las columnas. Pero Hibernate puede realizar operaciones DDL por usted internamente, como la creación de una tabla, eliminar una tabla, modificar una tabla, etc.
- Hibernate admite la generación automática de claves primarias . Significa que en JDBC tenemos que configurar manualmente una clave principal para una tabla. Pero Hibernate puede hacer esta tarea por ti.
- El marco de Hibernate es independiente de la base de datos porque admite HQL (lenguaje de consulta de Hibernate) , que no es específico de ninguna base de datos, mientras que JDBC depende de la base de datos.
- En Hibernate, el manejo de excepciones no es obligatorio , mientras que en JDBC el manejo de excepciones es obligatorio.
- Hibernate admite memoria caché , mientras que JDBC no admite memoria caché.
- Hibernate es una herramienta ORM, lo que significa que admite el mapeo relacional de objetos. Mientras que JDBC no está orientado a objetos, además, estamos tratando con valores que significan datos primitivos. En hibernación, cada registro se representa como un objeto, pero en JDBC, cada registro no es más que datos que no son más que valores primitivos.
Publicación traducida automáticamente
Artículo escrito por Bishal Kumar Dubey y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA