O que é?
É um framework para o mapeamento de objeto relacional, facilitando o mapeamento dos atributos entre uma base tradicional de dados e, o modelo objeto de uma aplicação, mediante o uso de annotations ou arquivos .XML para estabelecer esta aplicação.
Até o ano de 2003 eram utilizados como padrão os arquivos .XML, logo após passamos a utilizar como padrão as annotations, até os dias de hoje, substituindo o uso dos arquivos .XML.
Objetivo:
É reduzir a complexidade nos programas Java, baseado no modelo orientado a objeto, que precisa trabalhar com um banco de dados do modelo relacional.
Em especial no modelo de consultas e atualizações de dados. Sua principal característica é a transformação das classes em Java para tabelas de dados (tipo de dados Java para os tipos de dados SQL).
O Hibernate gera as chamadas SQL e libera o desenvolvedor do trabalho manual da conversão dos dados resultantes.
Vantagens:
- Melhoria na portabilidade da aplicação, pois não precisamos ficar vinculados a qual banco a aplicação irá de plugar, o Hibernate se encarrega disso (c/ muita configuração).
- Economia no tempo do desenvolvedor, pois Hibernate já gera os comando SQL.
Desvantagens:
- Perca de perfomance.Ele cria um layer (camada) entre o JDBC e o banco de dados, desta forma qualquer coisa que precisarmos fazer ex.: um select em uma tabela, vamos precisar instanciar a classe que corresponde à tabela.
- Quebra de paradigma.Pelo fato dos usuários estarem acostumados com a rotina de comandos SQL, pode ser um pouco complicado de entender as "criterias" (consulta contra uma classe particular existente).
Nenhum comentário:
Postar um comentário
DÚVIDAS - CRITICAS - SUGESTÕES