Diferença entre JDBC e Hibernate Diferença entre

Anonim

JDBC vs. Hibernate

A conectividade de banco de dados Java (também conhecida como JDBC) é uma API especificamente criada para a linguagem de programação Java. Ele define como um cliente pode acessar um banco de dados fornecendo métodos para consultar e atualizar dados em um banco de dados. Ele está orientado mais especificamente para bancos de dados relacionais. Foi introduzido no mercado como parte da Plataforma Java 2, Standard Edition, versão 1. 1 (ou J2SE). Foi empacotado junto com uma implementação de referência JDBC para ODBC bridge, permitindo conexões com a API para qualquer fonte de dados acessíveis ODBC no ambiente de host JVM.

O Hibernate é uma biblioteca de mapeamento orientada a objetos (ou biblioteca ORM) especificamente construída para a linguagem Java. Ele fornece uma estrutura para mapear um modelo de domínio orientado a objetos para um banco de dados relacional tradicional. Ele também resolve problemas de incompatibilidade de impedância relacional de objeto - isto é, problemas nos quais um sistema de gerenciamento de banco de dados relacional (ou RDBMS) está sendo usado por um programa escrito em uma linguagem ou estilo de programação orientado a objetos. Ele realiza isso substituindo os acessos de banco de dados relacionados à persistência direta com funções de gerenciamento de alto nível. É um software de código aberto gratuito e está distribuído sob a GNU Lesser General Public License.

O JDBC funciona permitindo que uma variedade de implementações existam e sejam usadas pelo mesmo aplicativo. Ele fornece um mecanismo pelo qual os pacotes Java corretos são carregados dinamicamente e registrados com o JDBC Driver Manager - que é usado como uma fábrica de conexão, de tipos, que cria conexões JDBC. Essas conexões suportam a criação e execução de declarações. Eles podem ser declarações de atualização (o SQL CREATE, REPLACE, UPDATE e DELETE, por exemplo). Eles também podem ser instruções de consulta, como SELECT. Uma conexão JDBC também pode invocar procedimentos armazenados - ou seja, os procedimentos que são armazenados no dicionário de dados do banco de dados.

O Hibernate funciona principalmente para mapear de classes Java para tabelas de banco de dados, bem como de tipos de dados Java para tipos de dados SQL. Ele também fornece recursos de consulta e recuperação de dados. Ele é capaz de gerar chamadas SQL, assim, aliviando o desenvolvedor do manuseio manual de resultados e conversão de objetos. Isso mantém o aplicativo portátil em todos os bancos de dados SQL que são suportados através da biblioteca. Ele mapeia as classes Java para as tabelas do banco de dados configurando um arquivo XML (no qual o Hibernate é capaz de gerar código fonte esquelético para as classes de persistência) ou usando a Anotação Java (o que faz com que a ação anterior discutível). O Hibernate também suporta mapeamento de tipos de valores personalizados, o que torna possível três cenários específicos: substituindo o tipo de SQL padrão, escolhido pelo Hibernate ao mapear uma coluna para uma propriedade; mapeando Java Enum para colunas como se fossem propriedades regulares; e mapeando uma única propriedade para várias colunas.

Resumo:

1. JDBC é uma API que define como um cliente pode acessar um banco de dados; O Hibernate é uma biblioteca ORM que fornece uma estrutura para mapear um modelo de domínio orientado a objetos para um banco de dados relacional tradicional.

2. JDBC permite que várias implementações existam e usadas pelo mesmo aplicativo; Mapas Hibernate de classes Java para tabelas de banco de dados.