Buscar

Aula 05(1)

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Aula 5 – Java Persistence API – JPA
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
O que veremos nesta aula
Generics 
Collections
Annotations
JPA 
Mapeamento objeto relacional
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Generics, ou programação genérica
Generics é uma especificação Java, JSR 14, que permite escrever códigos reutilizáveis por diferentes tipos de objetos, essa especificação determina ao compilador, qual tipo de classe deve ser interpretada no momento da compilação permitindo ao programador especificar qualquer tipo de objeto para ser manipulado em uma classe.
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Coleções
Um coleção de objetos, em Java, é um agregado, ou agrupamento, de referências a objetos, em alguma estrutura de dados, e que constituem os elementos da coleção.
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Coleções mais utilizadas
Conjuntos (Set)
HashSet: tabela hash
TreeSet: árvore rubro-negra
LinkedHashSet: tabela hash e listas encadeadas
Listas (List)
ArrayList: implementada com Array
LinkedList: lista duplamente encadeada 
Mapas (Map)
HashMap: tabela hash
TreeMap: árvore rubro-negra
LinkedHashMap: tabela hash e listas encadeadas
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
JPA – O que é?
Especificação padrão para mapeamento objeto-relacional e gerenciamento de persistência da plataforma Java EE 5.0
Possui amplo suporte pela maioria dos grandes players do mercado: Apache, Oracle, BEA, JBoss
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Mapeamento Objeto-Relacional
Modelo OO vs Modelo Relacional
Classe = Tabela
Objeto = Linha
Atributo = Coluna
Associação = Chave Estrangeira
Mapeamento via XML ou Annotations
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Visão Geral
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Como implementar?
Download do JPA Provider
Preparar banco de dados e driver JDBC
Mapeamento Objeto-Relacional
Configurar arquivo persistence.xml
Implementar acesso a dados via 
EntityManager
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
JPA Provider
Download do JPA Provider
Hibernate
Toplink Essentials
Open JPA
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Banco de Dados e Driver JDBC
Banco de sua preferência
Postgresql
MySql
Oracle
outros
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Exemplo de modelo relacional
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Mapeamento Objeto-Relacional
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Entidades
@Entity
Especifica que uma classe é uma entidade
Uma entidade é um objeto que pode ser persistido
Representa uma tabela no banco de dados relacional
@Table
Especifica nome da tabela no banco de dados
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Atributos
@Column
Mapeia um atributo ou uma propriedade (getter) a um campo do banco de dados
Possui diversas opções de validação
Lança javax.persistence.PersistenceException
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Chave Primária Simples
@Id
Cada entidade precisa possuir uma chave primária
Mapeia uma chave primária simples
Chave pode ser gerada automaticamente:
IDENTITY, AUTO, SEQUENCE, TABLE
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Chave Primária Composta
@Embeddable
Define que uma classe pode fazer parte de uma entidade
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Chave Primária Composta
@EmbeddedId
Define uma propriedade que é embeddable como chave primária
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Chave Primária Composta
@EmbeddedId
Define uma propriedade que é embeddable como chave primária
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Configurar Persistence.xml
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Acesso a Dados
javax.persistence.EntityManager
Gerencia o ciclo de vida das entidades
NEW, MANAGED, DETACHED, REMOVED
> Utilizado para criar e remover entidades, buscar entidades pela chave primária e fazer consultas
O conjunto de entidades que podem ser gerenciados por um EntityManager é definido dentro da Persistence Unit
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Acesso a Dados via JavaSE
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Acesso a Dados via JavaEE
Tema da Apresentação
Java Persistence API – JPA – AULA 5
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB
Bibliografia
Java: como programar - 8ª edição
Deitel, Paul J.; Deitel, Harvey M.
Aprenda J2EE em 21 Dias 
Bond, Martin ... [et al.]
Desenvolvendo Sites de E-Commerce: como criar um eficaz e lucrativo site de e-commerce, passo a passo
Sharma, Vivek; Sharma, Rajiv
JPA: http://code.google.com/p/vofficejava
Tema da Apresentação

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando