hibernate
COM HIBERNATE E ANNOTATION
Marcus Vinícius de Sousa Lemos http://www.marvinlemos.net Teresina/PI
INTRODUÇÃO
Grande parte das aplicações desenvolvidas mantém suas informações gravadas em um banco de dados relacional. O grande problema, é que, atualmente, as melhores linguagens de programação são orientadas a objeto, o que torna complicado a integração entre esses bancos e essas linguagens. Além disso, mesmo em linguagens estruturadas como Pascal e C, trabalhar com banco de dados tornava-se uma tarefa árdua a medida que a aplicação ia crescendo. Um modelo de programação muito usado, mesmo em linguagens tipicamente orientadas a objeto como PHP e Java, é misturar lógica de negócio com código SQL. Se o banco de dados da aplicação mudasse, seria necessário reescrever praticamente toda a aplicação, para dar suporte ao novo banco.
Uma técnica bastante conhecida da orientação a objetos é o encapsulamento, onde podemos esconder nossas regras dentro de objetos e definir alguns métodos nesses objetos que o mundo externo poderá usar para ter acesso ao resultado de nossos códigos. Essa idéia foi adaptada à programação com banco de dados. Os métodos necessários ao acesso e manipulação do banco ficam escondidos dentro de classes básicas. As outras partes da aplicação usam essas classes e seus objetos, ou seja, a aplicação nunca terá acesso diretamente ao nosso banco.
MAPEAMENTO OBJETO/RELACIONAL
As bibliotecas de Mapeamento Objeto/Relacional fazem o mapeamento de tabelas para classes. Se o banco de dados possui uma tabela chamada Pedido, a aplicação possuirá, provavelmente, uma classe denominada Pedido. Essa classe definirá atributos, que serão usados para receber e alterar os dados dos campos das tabelas, além de métodos para calcular os juros, valor total do pedido e etc.
Além disso, as classes que fazem essa interface com as tabelas do banco de dados, provêem um conjunto de métodos de alto-nível que servem