Você está na página 1de 49

Mini-Curso

JSF - Hibernate

Desenvolvendo um aplicativo completo com JSF e Hibernate.

Mini-Curso

JSF - Hibernate

JSF - Como ele funciona!? JSF como MVC. JSF - exemplo prtico. O que o Hibernate? Configurando o Hibernate. Iniciando o nosso projeto. Perguntas & Respostas

Mini-Curso

JSF - Hibernate

Para comear o nosso pequeno curso de JSF e Hibernate, iremos falar sobre o JSF, o que , como funciona e como programar voltado para essa framework. Faremos um exemplo prtico e comentaremos em cima do que estamos fazendo.

Mini-Curso

JSF - Hibernate

O que o JSF!?
um framework desenvolvido pela Sun Microsystems, e parte integrante da tecnologia do mundo Java EE. O framework Java Server Faces foi desenhado para facilitar o desenvolvimento de aplicaes Web atravs de componentes de interface de usurio (GUI) e conecta estes componentes a objetos lgicos. O JSF utiliza do paradigma MVC para trabalhar com sua apresentao e navegao de dados. Sua utilizao recomendada pela Sun para o desenvolvimento Web na atualizade.

Mini-Curso

JSF - Hibernate

Sobre o JSF!?
? Do mesmo criador do Struts; ? Paradigma de programao visual de User-interfaces

aplicado web; ? um framework que permite a criao de aplicaes Web com semntica de Swing implementando MVC; ? Toolability = Ferramentabilidade ; ? uma especificao J2EE JSR 127; ? Faces mais fcil de aprender que Struts; ? Faces mais componentizado;

Mini-Curso

JSF - Hibernate

Componentes para JSF


? ? ? ? ? ? ? ? ?

DataGrid; Tabbed Panel; PanelGrid; SelectOneMenu, SelectOneRadio, SelectOneListBox SelectManyMenu, SelectManyRadio, SelectManyListBox; FileUpload; Auto-complete AJAX; Muitos outros

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Para nossa primeira aplicao de exemplo iremos criar o famoso Hello World.
Estrutura do Projeto

Crie um novo projeto e chame-o de MeuPrimeiroProgramaJSF. Na opo de selecionar o servidor escolha Tomcat. Na seo de escolha do nosso framework escolha o JavaServer Faces ou JSF. Pronto, teremos um projeto criado, totalmente voltado para o JSF!

*Obs.: A IDE utilizada nesse mini-curso o Netbeans 6.0

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo

Note que temos logo de cara um arquivo welcomeJSF.jsp que um default do projeto, iremos alter-lo para que possamos entender um pouco dos componentes.

Mini-Curso

JSF - Hibernate
Para utilizar a framework JSF, precisamos declarar nos cabealhos de nossas pginas *.jsp as bibliotecas que utilizaremos no nosso caso aqui a JSF CORE e a JSF HTML, que a padro de todos desenvolvimento.

Aplicao de Exemplo

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo

Aqui temos o uso das bibliotecas para utilizao do JSF. Por padro toda pgina JSF tem que ter o <f:view>. Esta tag o incio da rvore de componentes, em seguida temos as tags de JSF HTML, <h:outputText>.

Note que o JSF est interagindo normalmente com tags HTML padro. Isso mais uma vantagem que o JSF nos traz. Mais a frente veremos como isso nos poder ser til, muito til. ;)

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo

Altere o valor do <h:outputText> para Hello World. E mande executar o projeto.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo

AEW!!! Voc conseguiu! \o/

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Bom... At agora nada de to espetacular, mas vamos engrossar aqui um pouco desse caldo. Na nossa segunda aplicao com JSF, iremos trabalhar com JavaBean, como passar valores numa outra pgina, como alterar o nosso objeto, como validar algumas coisas. Mo a obra! C r i e u m n o v o p ro j e t o e ch a m e - o d e PrimJSFDinamico. Selecione o Tomcat como servidor e no framework marque somente JavaServer Faces

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Nessa nossa segunda aplicao teremos um campo para o envio de nomes. Este exerccio contar com uma validao, para o caso do usurio entrar com um valor invlido, no alfabtico, retornando um erro. Caso retorne o erro, alm de manter preenchido o campo digitado, tambm mostrar uma mensagem, solicitando a alterao.

Lets go!

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
O Javabean mostrado a seguir ser o responsvel pela comunicao entre as pgina inicial, que o usurio digitar o nome, em um formulrio, e a pgina que resultar na mensagem de boas vindas, caso esta seja submetida com sucesso. Crie uma nova classe, File>New File> Java>Class, como o nome de NomeBean e a coloque em um pacote de beans, nesse caso br.com.zarathon.bean.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Cdigo de NomeBean

Com a instncia de FacesContext voc obtm todas as informaes de estado por requisio usadas para o processamento de um pedido JSF. O mdoto getCorrentInstance() obtm a instncia atual da classe FacesContext.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Cdigo de NomeBean (Continuao)

Para adicionar uma mensagem, a classe FacesMessage representa uma nica validao ou mensagem que tipicamente associada um componente particular na view. Neste caso, o mtodo addMessage(), da instncia FacesContext, chamado. A mensagem anexada est associada ao componente UI, se este no for nulo.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Configurando a navegao da sua aplicao

Toda a navegao da sua aplicao passa pelo arquivo de configurao faces-config.xml. Desta forma, este arquivo j deve ter sido adicionado pela IDE, uma vez que o projeto tem uma pr-configurao para JavaServer Faces.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Configurando a navegao da sua aplicao
Iremos agora adicionar o nosso NomeBean ao nosso framework JSF, pois o mesmo poder alterar os atributos do mesmo e efetuando seus mtodos. para isso mude a visualizao do faces-config.xml de PageFlow para XML. Feito isso, voc ver a pgina XML que fica por trs do PageFlow. Adicionaremos agora o nosso NomeBean. Em uma linha vazia, entra as tags <facesconfig> e </faces-config>, clique com o boto direito e selecione Add Manager Bean que fica no menu JavaServer Faces. Abrir uma janelinha, como essa a do lado, basta agora s preencher com os nosso dados.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Configurando a navegao da sua aplicao

Crie um novo arquivo jsp, que exibir a nossa mensagem de boas vindas, chame-o de boasVindas. Deixe-o em branco por enquanto, estamos aqui configurando nossa navegao e no nossa programao. Retornando faces-config.xml, agora voc possui duas pginas sendo representadas graficamente no PageFlow. No canto direito da imagem que representa a pgina welcome.jsp, existe uma quadrado. Arrastando deste quadrado, voc faz uma linha de navegao, ao qual pode apontar para a mesma pgina ou para outra. Arraste de welcome.jsp at a imagem que representa boasVindas.jsp e solte.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Configurando a navegao da sua aplicao

Arraste deste ponto

Solte aqui

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Configurando a navegao da sua aplicao

Se tudo ocorreu como esperado, o resultado final ser esse. Muito bom... Agora temos a nossa primeira navegao, porm ela gera um texto estranho para ns, CASE1. Iremos alterar esse texto para algum texto que faa sentido para ns, altere para sucesso, tudo minusculo. Isso quer nos dizer que quando vier uma resposta com texto sucesso ele redirecionar para a pgina boasVindas.jsp. Faa o mesmo processo s que agora arraste a resposta para o prprio welcomeJSF.jsp, e no texto que aparecer altere para falha, tudo minusculo.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Configurando a navegao da sua aplicao

Se voc fez tudo certo, voc ter algo desse tipo.

Parabns, sua visualizao est concluda!


Veja a aba XML e veja o cdigo gerado.

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
At agora nada de pginas... Mas isso acabou... Vamos agora montar nossas pginas da nossa aplicao.

welcomeJSF.jsp

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
At agora nada de pginas... Mas isso acabou... Vamos agora montar nossas pginas da nossa aplicao.

boasVindas.jsp

Mini-Curso

JSF - Hibernate

Aplicao de Exemplo
Muito bem, agora s o Gran Finale, mande rodar a aplicao e veja o resultado!

Mini-Curso

JSF - Hibernate

persistncia... persistncia... persistncia...

Hibernate

Mini-Curso

Hibernate
Viso Geral

JSF - Hibernate

para a linguagem Java ? Conjunto de classes, interfaces e configurao que permite simplificar o trabalho de persistir e recuperar objetos Java em banco de dados relacionais
Aplicao Mapeamento Banco de Dados

? O Hibernate um framework de mapeamento objeto-relacional

API

Hibernate

JDBC

Mini-Curso

Hibernate
Configurando o Hibernate

JSF - Hibernate

? Configurao feita atravs do arquivo hibernate.cfg.xml ? Deve estar localizado na raiz do classpath ? Localizao default ? Para projetos maven, utilizar a pasta src/main/resources ? Configuraes contm ? Parmetros de acesso a base de dados ? Pool de conexes ? Entidades a serem persistidas

Mini-Curso

JSF - Hibernate

Hibernate

Mini-Curso

JSF - Hibernate

Incio do Projeto
Iremos desenvolver uma aplicao que cadastre autores e esses autores podero ter livros publicados. Faremos tambm um controle de login do administrador do cadastro. E por fim faremos a impresso dos autores com seus respectivos livros.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Configurando o arquivo hibernate.cfg.xml. Criando a classe Usurio. Mapeando a classe Usurio. Gerando as tabelas do banco. Teste da classe Usurio. Criao do DAO da classe Usurio. Criando o HibernateUtil. Criando o DAOFactory. Transformando o DAO em DAO Genrico. Criando pginas para cadastro de usurios e lista de usurio. Criando a classe Autor. Criando pginas para cadastro de autores e lista de autores. Criando a classe Livro. Criando pginas para cadastro de livros e lista de livros. Fazendo o sistema de Login. Montando nosso controle.

Mini-Curso

JSF - Hibernate

Mini-Curso
Bibliografia

JSF - Hibernate

Apostilas da Caelum FJ21, FJ28 Livro Desenvolvendo aplicaes Web com Netbeans 6.0, Edson Gonalves, Ed. Cincia Moderna Apresentao: HIBERNATE de Marcelo Mrack

Você também pode gostar