migrando de jdbc para jpa

Post on 02-Jan-2016

66 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Migrando de JDBC para JPA. Hébert Coelho de Oliveira. Sobre mim. 10 anos como desenvolvedor 3+ anos com Java Pós graduação: MIT Engenharia de Software com Java Certificações: SCJP, SCWCD, OCBCD (em breve) Criador do blog http://uaihebert.com Professor de Java básico/Web - PowerPoint PPT Presentation

TRANSCRIPT

MIGRANDO DE JDBC PARA JPAHébert Coelho de Oliveira

SOBRE MIM

10 anos como desenvolvedor 3+ anos com Java Pós graduação: MIT Engenharia de Software

com Java Certificações: SCJP, SCWCD, OCBCD (em

breve) Criador do blog http://uaihebert.com Professor de Java básico/Web E o mais importante, torcedor do Real Madrid

O QUE É JDBC?

JDBC não é – Joça Do Barcelona, caiu! JDBC é - Java Database Connectivity Considerada API de baixo nível. Serve de ponte

Aplicação JDBC Banco de dados

FACILIDADES DO JDBC

Drivers ResultStatement Migrar de Banco de dados* Fácil configuração: URL, Rede, Instalação

INSERINDO NO BANCO

E como ficaria 1x1?

INSERINDO EM RELACIONAMENTO 1X1

E como ficaria 1xN?

INSERINDO EM RELACIONAMENTO 1XN

E se fosse N x N?

INSERINDO EM RELACIONAMENTO N X N

Alguém imagina qual seria o comportamento do script acima caso o sexto insert desse algum erro?

E como ficaria o ID na vida real? E como ficaria um insert em uma tabela

passando campos dinâmicos?

CAMPOS DINÂMICOS

Bastante suscetível a erros, não?

ONDE ESTÁ O ERRO?

ONDE ESTÁ O ERRO?

ONDE ESTÁ O ERRO?

ONDE ESTÁ O ERRO?

COMO SERIA UMA CONSULTA

Imagine se essa classe tivesse os 30 atributos retornados nessa consulta?

VOCÊ PODERIA TER A SEGUINTE REAÇÃO....

OU ENTÃO...

E QUEM TE PASSOU A “TAREFA CHATA”...

ONDE CHEGAMOS?

SQL complexo é difícil dar manutenção Muito código em SQL para uma ação simples Não é muito viável ter diversos bancos de

dados na mesma aplicação Caso algum atributo de uma classe mude,

todos os “scripts” terão que mudar Por que com JPA os “scripts” não mudariam? Por que com JPA eu não teria problemas de

migração de banco?

FINALMENTE VAMOS FALAR DO JPA \O/

O que é o JPA? O que é Hibernate, EclipseLink, OpenJPA?

Como o JPA trabalha? Como ele é portável? O que é JPQL? Como ele trata os relacionamentos? É possível migrar aos poucos? Como funciona a transação com o banco de

dados? Como ele funciona com web e desktop? E como última pergunta.... Como o Real Madrid consegue ser tão

bom???

CONFIGURAÇÃO

Arquivo /META-INF/persistence.xml

BIBLIOTECAS

Bibliotecas da Implementação

ENTITY

O que é uma Entity? O que uma classe precisa para ser uma Entity?

ENTITY

INSERINDO NO BANCO

E como ficaria 1x1?

RELACIONAMENTO 1X1 (ONE TO ONE)

Uni direcional:

Bi direcional

INSERINDO EM RELACIONAMENTO 1X1

E como ficaria 1xN?

RELACIONAMENTO 1XN (ONE TO MANY)

Uni direcional:

Bi direcional

INSERINDO EM RELACIONAMENTO 1XN

E se fosse N x N?

RELACIONAMENTO N X N (MANY TO MANY)

Uni direcional:

Bi direcional

INSERINDO EM RELACIONAMENTO N X N

COMO SERIA UMA CONSULTA

Imagine se essa classe tivesse os 30 atributos retornados nessa consulta?

VOCÊ PODERIA TER A SEGUINTE REAÇÃO....

OU ENTÃO...

E QUEM TE PASSOU A “TAREFA CHATA”...

FINALIZANDO

Facilidade de migrar o banco Redução do trabalho manual para persistir

dados Maior agilidade no desenvolvimento Desacopla mais a aplicação E por último... Dá mais tempo para o desenvolvedor realizar

testes, deixa o código limpo. E lógico, dá mais tempo para ver jogos do

Real Madrid!

DÚVIDAS?

Agradeço a todos pela oportunidade. [=

http://uaihebert.com

contato@uaihebert.com

top related