A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Java Persistence Architecture Julio M. Faerman. Mapeamento O-R Java Persistence Architecture # 2 P lain O ld J ava O bject P lain O ld J ava O bject Mapeamento.

Apresentações semelhantes


Apresentação em tema: "Java Persistence Architecture Julio M. Faerman. Mapeamento O-R Java Persistence Architecture # 2 P lain O ld J ava O bject P lain O ld J ava O bject Mapeamento."— Transcrição da apresentação:

1 Java Persistence Architecture Julio M. Faerman

2 Mapeamento O-R Java Persistence Architecture # 2 P lain O ld J ava O bject P lain O ld J ava O bject Mapeamento Objeto- Relacional SGBDR Anotações XML Convenções

3 Java Persistence Architecture # 3 Object JPA javax.persistence JPA javax.persistence MySQL Anotações XML Hibernate, Toplink, OpenJPA, EclipseLink Convenções Anotações XML

4 Java Persistence Architecture # 4 ArtefatoJPAHibernate Configuraçãopersistence.xmlhibernate.cfg.xml Hibernate.properties Mapeamento Annotations Mapeamento XMLorm.xml.hbm.xml QueriesJPQLHQL

5 API Java Persistence Architecture # 5

6 Ciclo de vida de entidades EstadoContexto Persistente IDExemplo Novo (new)Não ent = new Entidade(); Gerenciado (managed)Sim em.persist(ent); Desvinculado (detached)NãoSimem.close(); Removido (removed)Sim em.remove(ent); Java Persistence Architecture # 6

7 Ciclo de vida de entidades Java Persistence Architecture # 7

8 META-INF/persistence.xml Java Persistence Architecture # 8

9 Construtor sem argumentos public ou protected Não final Serializable* Java Persistence Architecture # 9

10 –GenerationType.IDENTITY –GenerationType.SEQUENCE –GenerationType.TABLE Java Persistence Architecture # 10

11 class PkEntidade{ long pk1; long pk2; Class PkEntidade id; class PkEntidade{ long pk1; long Class pk2; } Java Persistence Architecture # 11

12 Propriedades Primitivos e Wrappers Numericos = 4, precision = 15) Temporais / transient Java Persistence Architecture # 12

13 Hello World JPA Java Persistence Architecture # 13

14 Java Persistence Architecture # 14 Pessoa Passaporte Pessoa Passaporte Pessoa Passaporte pessoa.getPassaporte(); passaporte.getPessoa(); pessoa.getPassaporte(); -Dono (owner) da associação - Tabela que vai ter a -Dono (owner) da associação - Tabela que vai ter a FK

15 @OneToMany Java Persistence Architecture # Departamento dpt = Departamento dpt = List peacas = List peacas = cascade=CascadeType.ALL) O lado many sempre é owner e não declara mappedBy.

16 Java Persistence Architecture # 16 Escola Predio NN Set escolas = predio.getEscolas(); Set predios = escola.getPredios(); - Qualquer lado pode ser owner Set escolas = predio.getEscolas(); Set predios = escola.getPredios(); - Qualquer lado pode ser owner

17 Herança Java Persistence Architecture # strategy=InheritanceType.TABLE_PER_CLASS) Pessoa IDDTYPENomeCpfCNPJ Pessoa IDDTYPENome PessoaFisica IDNomeCPF PessoaFisica IDCPF PessoaJuridica IDCNPJ PessoaJuridica IDNomeCNPJ

18 Controle do esquema Java Persistence Architecture # 18

19 Consultas JPQL SELECT select p from PessoaFisica as p where p.passaporte.numero = :numero UPDATE update Filial f set f.status = especial' where f.vendas > DELETE delete from filial f where f.vendas = 0 AND f.funcionarios IS EMPTY Java Persistence Architecture # 19

20 Consultas Nomeadas Java Persistence Architecture @NamedQuery(name="pf.todas",query="select pf from PessoaFisica query="select p from PessoaFisica p where p.passaporte.numero = :numero")}) public class PessoaFisica extends @NamedQuery(name="pf.todas",query="select pf from PessoaFisica query="select p from PessoaFisica p where p.passaporte.numero = :numero")}) public class PessoaFisica extends Pessoa {… Query query = em.createNamedQuery("pf.porPassaporte"); query.setParameter("numero", "123456"); PessoaFisica p = (PessoaFisica) query.getSingleResult(); Query query = em.createNamedQuery("pf.porPassaporte"); query.setParameter("numero", "123456"); PessoaFisica p = (PessoaFisica) query.getSingleResult();

21 Consultas Nativas name="OrderResults", entityClass=Order.class, column="order_item") } entityClass=Item.class, column="item_name"), })}) Java Persistence Architecture # public class Order protected int id; protected long protected Item item;... }.. em.createNativeQuery( select * from Order,OrderResults);

22 orm.xml (JSR 220, chap. 10) JPOX JPA tutorial org.jpox.tutorial.jpa Java Persistence Architecture # 22

23 hbm.xml Java Persistence Architecture # 23

24 Persistencia completa usando JPA Java Persistence Architecture # 24

25 Java Persistence Architecture # 25 Dúvidas ?


Carregar ppt "Java Persistence Architecture Julio M. Faerman. Mapeamento O-R Java Persistence Architecture # 2 P lain O ld J ava O bject P lain O ld J ava O bject Mapeamento."

Apresentações semelhantes


Anúncios Google