Top Posts

Testando Design Responsivo

Continue lendo

Hibernate Annotations + JSF + MySql

Posted by camilolopes | Posted in BD, Hibernate, JSF | Posted on 19-12-2009

1

stressprogrammer

Ola Pessoal!! Dando continuidade ao post anterior, resolvi dar um update na nossa NewsLetter. No post anterior desenvolvemos usando apenas Hibernate + JSF e tendo o MySql como BD. Hoje veremos um recurso que está “bombando” no mercado sao os Annotations. Realmente vieram para ficar e usar Hibernate puro é bem mais trabalhoso sem falar que ficar criando arquivos .xml para mapeamento com o BD nao é algo tão confortável assim. Então veremos o que annotations pode fazer por nos desenvolvedores. Veremos o básico da tecnologia Annotations nesse post.

Ahh, um ponto importante não vou repetir todo o conteudo do post anterior tais como :criaçao das paginas JSF, do Bean, dos arquivos Hibernate etc. Irei apresentar apenas os arquivos que devem sofrer alterações e o que deve ser acrescentado na aplicação para que a nova tecnologia entre em cena. Se vc perdeu o post anterior, ele está logo abaixo:

Post Recomendado
JSF + Hibernate + MySql no Eclipse

O que é Java Annotations? (abaixo a técnica de reutilização da informação 😉 )
An annotation, in the Java computer programming language, is a special form of syntactic metadata that can be added to Java source code.[1] Classes, methods, variables, parameters and packages may be annotated. Unlike Javadoc tags, Java annotations can be reflective in that they can be embedded in class files generated by the compiler and may be retained by the Java VM to be made retrievable at run-time.

Fonte: http://en.wikipedia.org/wiki/Java_annotation

Downloadhttps://www.hibernate.org/6.html
Antes de começar você precisa ir no site hibernate.org e fazer o download do package Hibernate Annotations a versão que estamos usando aqui é 3.4.0 GA .
Em seguida descompacte o arquivo e copie os arquivos .jars de lib e cole no lib do seu projeto. Na verdade precisamos apenas de dois arquivos .jars: hibernate-annotations.jar e o ejb3-persistence.jar

Desenvolvimento
1. Primeiro passo agora é alterar o Bean. Então abra o seu arquivo bean, que no nosso caso é NewsLetter.java no package br.com.bean. E altere o arquivo conforme o code a seguir:

Explicando as anotacoes:
@Entity = é uma entidade que representa uma class bean;
@Table = mapeia com o nome da tabela. Aqui eu coloquei o table para explicar, mas poderia omitir levando em conta que eu teria uma table no meu BD com o mesmo nome da minha class Bean. Ou seja, se nao especificar qual será a tabela do BD, será considerada o nome do Bean. Tenha atenção se você tem tabelas com nomes diferentes em relação ao seu bean;
@Id = tem relação com a chave primaria da sua tabela;
@Column = mapeia com as colunas da sua tabela, segue a mesma regra de table, quando ter colunas com nomes diferentes este campo eh obrigatório, caso contrario non-required ;
2.Precisamos fazer umas mudanças na classe de conexao, entao abra o arquivo ConexaoFactory.java e altere conforme abaixo

Nessa classe usamos a classe AnnotationConfiguration()para que ele aponte para as anotacoes no arquivo NewsLetter.java atualizado anteriormente com os annotations.

3.Precisamos apenas fazer uma pequena alteração no arquivo de configuração do hibernate que criamos no post anterior o arquivo hibernate.cfg.xml. Lembra que ele tinha uma referencia para o arquivo visitante.hbm.xml que este arquivo tinha como objetivo fazer o mapeamento com o BD? Pois é, ele será descartado a partir de agora, se quiser pode ate deletar do projeto. E deixe o seu arquivo hibernate.cfg.xml conforme o code abaixo:

Apenas removemos as tags que apontavam para o arquivo de mapeamento e inserimos a classe bean que possui um annotation mapeamendo o nosso BD.
4.Salve todas as alteracoes, seu projeto deve estar conforme a imagem a seguir:

Note que não temos mais o arquivo visitantes.hbm.xml, como tinhamos no ultimo post.
Agora pode testar o resultado é o mesmo, ou seja, ele deve cadastrar tranquilamente o usuário, porem agora é com annotations e nao mais com hibernate puro.

Vou ficando por aqui e espero que tenham gostado do post. E se vc está começando a estudar o framework aqui pode ser seu ponto de partida ;).
abracos e até o próximo post…

Related Posts with Thumbnails

Comments (1)

[…] Posts Recomendados JSF + Hibernate + MySQL Hibernate Annotations + JSF + MySQL […]

Write a comment