Hibernate

Disponível somente no TrabalhosFeitos
  • Páginas : 33 (8070 palavras )
  • Download(s) : 0
  • Publicado : 19 de outubro de 2012
Ler documento completo
Amostra do texto
Comunidade Livre Paraíba
http://www.softwarelivre.pb.gov.br/

Introdução ao Hibernate 3
Maurício Linhares
Mapeie o seu modelo de objetos diretamente para o banco de dados, de uma forma simples e se livrando de vez da SQL

O que é o Hibernate?
O Hibernate é uma ferramenta de mapeamento objeto/relacional para Java. Ela transforma os dados tabulares de um banco de dados em um grafo de objetosdefinido pelo desenvolvedor. Usando o Hibernate, o desenvolvedor se livra de escrever muito do código de acesso a banco de dados e de SQL que ele escreveria não usando a ferramenta, acelerando a velocidade do seu desenvolvimento de uma forma fantástica. Mas o framework não é uma boa opção para todos os tipos de aplicação. Sistemas que fazem uso extensivo de stored procedures, triggers ou queimplementam a maior parte da lógica da aplicação no banco de dados, contando com um modelo de objetos “pobre” não vai se beneficiar com o uso do Hibernate. Ele é mais indicado para sistemas que contam com um modelo rico, onde a maior parte da lógica de negócios fica na própria aplicação Java, dependendo pouco de funções específicas do banco de dados.

Antes de você seguir em frente...
Antes de começarvocê deve fazer o download de uma versão estável do Hibernate 3, de preferência a versão 3.0.5, com a qual este artigo foi testado. Você pode encontrar os arquivos dela aqui: https://sourceforge.net/project/showfiles.php?group_id=40712&package_id=127784 Depois de fazer o download, adicione o arquivo hibernate3.jar e os seguintes arquivos da pasta “lib” do download ao seu classpath (ou ao classpath dasua IDE): ehcache-1.1.jar jta.jar xml-apis.jar commons-logging-1.0.4.jar c3p0-0.8.5.2.jar asm-attrs.jar log4j-1.2.9.jar dom4j-1.6.jar antlr-2.7.5H3.jar cglib-2.1.jar asm.jar jdbc2_0-stdext.jar xerces-2.6.2.jar commons-collections-2.1.1.jar O banco de dados escolhido para este artigo é o MySQL, versão 4.1, mas os scripts SQL pra gerar as tabelas podem ser facilmente adaptados para outros bancos.Usando o MySQL você também vai ter que colocar o driver JDBC dele no seu classpath, ele pode ser baixado no seguinte endereço (a versão utilizada no artigo foi a 3.1.8): http://dev.mysql.com/downloads/connector/j/3.1.html Além do driver do MySQL, você também vai ter que adicionar os arquivos .JAR que estão na pasta “lib” do arquivo do driver, o “aspectjrt.jar” e o “aspectjtools.jar”.

Grupo deUsuários Java – http://www.guj.com.br – Página 1

Comunidade Livre Paraíba
http://www.softwarelivre.pb.gov.br/

Você também deve criar o banco de dados, usando o arquivo “banco.sql” que está junto com os outros anexos desse artigo.

Neste artigo você vai conhecer um pouco sobre os mapeamentos do Hibernate e a HQL, a linguagem de buscas do framework. O artigo assume que você já tenha umconhecimento sobre a linguagem Java, bancos de dados e XML, além de ser capaz de montar um ambiente de desenvolvimento Java com todas as configurações necessárias.

Definindo os objetos do modelo e as tabelas do banco
O nosso modelo é simples, ele modela um cadastro de alunos em uma universidade. Nele nós temos as classes, Pessoa, Aluno, Professor, Endereço, Turma, Disciplina e Curso, que se relacionam comomostrado no seguinte diagrama:

A classe Pessoa, que tem um Endereço, é a classe base para as classes Aluno e Professor. Um Aluno pode estar em várias Turmas, assim como um Professor. Cada Turma pode ter vários Alunos e apenas um Professor. A Turma tem ainda uma Disciplina, que pode conter várias Turmas e que tem um Curso, que também pode ter várias Disciplinas. Com um modelo de objetos criado,vejamos como essas classes poderiam ser transformadas em tabelas, neste diagrama:

Grupo de Usuários Java – http://www.guj.com.br – Página 2

Comunidade Livre Paraíba
http://www.softwarelivre.pb.gov.br/

Como você já deve ter percebido, não há nada demais com esse modelo de banco de dados, as tabelas estão interligadas normalmente usando chaves primárias e chaves estrangeiras e uma tabela de...
tracking img