SlideShare uma empresa Scribd logo
1 de 15
JAvaPersistence
API,Hibernatee
JavaQuery
Language
programacaoc
William A R de Avila & Robson da Costa
Programação C - Faculdade Dom Bosco de Porto Alegre - RS -
Brasil
Introdução
➢Informação
(datas,valores)
➢SGBD
➢Modelo relaciona x
Modelo Orientado a
objetos
➢ORM
ORM, é um mecanismo
mediador utilizado para
converte as informações de
um modelo de dados
relacional e um modelo
orientado a objetos.
javapersistence api-
jpa
➢ API padrão do JAVA
➢ Conceito de POJO (usa o conceito de entidade, que
permite gravar os objetos na base de dados)
➢ ORM permite transformarmos as tabelas do banco em
classes
➢ Programador passa a usar a programação em JAVA ao invés
de comandos SQL
➢ Para isso se usa metadados que podem ser desenvolvidos
em XML
Hibernate
➢ Framework escrito em JAVA
➢ Utiliza linguagem HQL(Hibernate Query Language)
➢ Usa funções para consulta e escrita de dados, permitindo
que o software codificado trabalhe com muitos bancos
diferentes
➢ HQL é totalmente orientada a Objeto porém muito parecida
com o SQL
➢ Você pode optar por utilizar SQL sobre o Java ao invés
do contrario
Hibernate
➢ Facilita portabilidade do banco
➢ Ao lado podemos visualizar o
funcionamento do Hibernate
➢ Vantagens:
○ Simplifica o código
○ Abstrai a parte do BD
○ Evita reescrever códigos SQL
JavaPersistence Query
Language
➢ Linguagem que o JAVA utiliza para comunicação com BD
➢ Utilizado para fazer consultas a entidades armazenadas
no BD
➢ Semelhante ao SQL
➢ SELECT a FROM autor1 ORDER BY a.nome,a.sobrenome;
JAPIeHibernate
➢JAPI, versão atual 2.x,
surge para apoiar os
problemas existentes com
persistência durante o
uso do EJB
➢O Hibernate ja na
versão 4.x, incorpora
anotações no código,
substituindo XML
➢Assim como JPA e JPQL
surgem para apoiar o
desenvolvedor na
implementação do
persistencia em Java
Alternativasdisponíveis
- JBDC - Conjunto de classess escritas em Java que permite
complexas consultas SQL
- EclipseLink, um framework semelhante ao Hibernate que
utiliza sua linguagem prpria para executar query
- Apache OpenJPA, outro framework semelhante ao hibernate
que utiliza Java Query e também sua própria linguagem
para executar query
JAPIeHibernate
➢O JPA implementa a
facilidade de tornar
objetos simples com
algum construtor default
, persistíveis
➢Sendo assim bastam
anotações no código ou
um metadados XML para o
mapeamento relacional
➢HQL é orientada a
objeto
➢O Hibernate cria todos
os comandos SQL,
independente do banco,
efetuando inclusive o
port automatico
JAPIexemplosdecódigo
➢Estrutura Básica JPA
➢Criação de classe
➢Ao Executar
a classe é
transformada
em uma
simples
tabela,
claro que
para tal foi
necessário
configurar o
login no
arquivo xml.
JAPIexemplosdecódigo
Hibernateexemplosdecódigo
➢Após criarmos a tabela,
teremos que criar a
classe no Java como no
exemplo
Hibernateexemplosdecódigo
➢Agora temos que criar o XML para fazer o
relacionamento entre atributo e os campos da
tabela
Hibernateexemplosdecódigo
➢Agora criar o arquivo para
conectar com o banco de
dados
➢Criação de um arquivo onde
é instanciado as classes:

Mais conteúdo relacionado

Mais procurados

Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento ORNécio de Lima Veras
 
Apache camel
Apache camelApache camel
Apache cameldist_bp
 
Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010
Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010
Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010Flávio Lisboa
 
Apresentação Java Web - Jsf+Hibernate
Apresentação Java Web - Jsf+HibernateApresentação Java Web - Jsf+Hibernate
Apresentação Java Web - Jsf+HibernateZarathon Maia
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para phpFabio B. Silva
 
Mapeamento Objeto Relacional em PHP com Outlet ORM
Mapeamento Objeto Relacional em PHP com Outlet ORMMapeamento Objeto Relacional em PHP com Outlet ORM
Mapeamento Objeto Relacional em PHP com Outlet ORMFábio Rehm
 
T10_LM3: Subalgoritmos/funções (2013-2014)
T10_LM3: Subalgoritmos/funções (2013-2014)T10_LM3: Subalgoritmos/funções (2013-2014)
T10_LM3: Subalgoritmos/funções (2013-2014)Carlos Santos
 
Delphi Parallel Programming Library
Delphi Parallel Programming LibraryDelphi Parallel Programming Library
Delphi Parallel Programming LibraryMario Guedes
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaEduardo Bregaida
 
Desenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript FulllDesenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript FulllDjanilson Alves
 
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...Professor Samuel Ribeiro
 

Mais procurados (17)

Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
 
Anotações do mapeamento OR
Anotações do mapeamento ORAnotações do mapeamento OR
Anotações do mapeamento OR
 
Java basico
Java basicoJava basico
Java basico
 
Relacionamentos do mapeamento OR
Relacionamentos do mapeamento ORRelacionamentos do mapeamento OR
Relacionamentos do mapeamento OR
 
Mapeamento de herança OR
Mapeamento de herança ORMapeamento de herança OR
Mapeamento de herança OR
 
Java20141218 19
Java20141218 19Java20141218 19
Java20141218 19
 
Apache camel
Apache camelApache camel
Apache camel
 
JSPs Introdução Parte 1
JSPs Introdução Parte 1JSPs Introdução Parte 1
JSPs Introdução Parte 1
 
Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010
Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010
Mapeamento Objeto Relacional com PHP - PHP Conference Brasil 2010
 
Apresentação Java Web - Jsf+Hibernate
Apresentação Java Web - Jsf+HibernateApresentação Java Web - Jsf+Hibernate
Apresentação Java Web - Jsf+Hibernate
 
Doctrine 2 camada de persistência para php
Doctrine 2   camada de persistência para phpDoctrine 2   camada de persistência para php
Doctrine 2 camada de persistência para php
 
Mapeamento Objeto Relacional em PHP com Outlet ORM
Mapeamento Objeto Relacional em PHP com Outlet ORMMapeamento Objeto Relacional em PHP com Outlet ORM
Mapeamento Objeto Relacional em PHP com Outlet ORM
 
T10_LM3: Subalgoritmos/funções (2013-2014)
T10_LM3: Subalgoritmos/funções (2013-2014)T10_LM3: Subalgoritmos/funções (2013-2014)
T10_LM3: Subalgoritmos/funções (2013-2014)
 
Delphi Parallel Programming Library
Delphi Parallel Programming LibraryDelphi Parallel Programming Library
Delphi Parallel Programming Library
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 
Desenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript FulllDesenvolvendo uma Aplicação Javascript Fulll
Desenvolvendo uma Aplicação Javascript Fulll
 
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...Introdução à programação para web com Java -  Módulo 03: Conceitos básicos de...
Introdução à programação para web com Java - Módulo 03: Conceitos básicos de...
 

Destaque

2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simplesLukinha92
 
INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...
INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...
INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...Michel Souza
 
Boas práticas com jpa 2 e hibernate flisol 2012
Boas práticas com jpa 2 e hibernate   flisol 2012Boas práticas com jpa 2 e hibernate   flisol 2012
Boas práticas com jpa 2 e hibernate flisol 2012Frederico Maia Arantes
 
Workshop modelando usuários, tarefas e idéias
Workshop modelando usuários, tarefas e idéiasWorkshop modelando usuários, tarefas e idéias
Workshop modelando usuários, tarefas e idéiasKarine Drumond
 
Sistema de gestão de restaurantes self service - ultima versão 3
Sistema de gestão de restaurantes self   service - ultima versão 3Sistema de gestão de restaurantes self   service - ultima versão 3
Sistema de gestão de restaurantes self service - ultima versão 3brunogea
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com HibernateDanilo Braga
 
Restaurante
RestauranteRestaurante
Restaurantemarcuzu
 

Destaque (12)

Apresentação mapeamento objeto relacional
Apresentação mapeamento objeto relacionalApresentação mapeamento objeto relacional
Apresentação mapeamento objeto relacional
 
Minicurso jpa e hibernate
Minicurso jpa e hibernateMinicurso jpa e hibernate
Minicurso jpa e hibernate
 
2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples
 
INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...
INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...
INTERFACES para o USUÁRIO - a base de um sistema de gerenciamento para restau...
 
Hibernate
HibernateHibernate
Hibernate
 
Hibernate
HibernateHibernate
Hibernate
 
Boas práticas com jpa 2 e hibernate flisol 2012
Boas práticas com jpa 2 e hibernate   flisol 2012Boas práticas com jpa 2 e hibernate   flisol 2012
Boas práticas com jpa 2 e hibernate flisol 2012
 
Workshop modelando usuários, tarefas e idéias
Workshop modelando usuários, tarefas e idéiasWorkshop modelando usuários, tarefas e idéias
Workshop modelando usuários, tarefas e idéias
 
Aula JPA
Aula JPAAula JPA
Aula JPA
 
Sistema de gestão de restaurantes self service - ultima versão 3
Sistema de gestão de restaurantes self   service - ultima versão 3Sistema de gestão de restaurantes self   service - ultima versão 3
Sistema de gestão de restaurantes self service - ultima versão 3
 
Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
 
Restaurante
RestauranteRestaurante
Restaurante
 

Semelhante a JPA e Hibernate ORM para Java

Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com HibernateDanilo Braga
 
Solisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para PostgresqlSolisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para PostgresqlLeonardo Medeiros Martins
 
Repensando padrões e boas práticas java ee
Repensando padrões e boas práticas java eeRepensando padrões e boas práticas java ee
Repensando padrões e boas práticas java eeAdriano Tavares
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHPPaulo Dayvson
 
Linguagens Dinamicas na JVM
Linguagens Dinamicas na JVMLinguagens Dinamicas na JVM
Linguagens Dinamicas na JVMWilliam Gouvea
 
Mini curso hibernate com anotações
Mini curso hibernate com anotaçõesMini curso hibernate com anotações
Mini curso hibernate com anotaçõesdieguinhomcz
 
Mini curso hibernate com anotações
Mini curso hibernate com anotaçõesMini curso hibernate com anotações
Mini curso hibernate com anotaçõesdieguinhomcz
 
Aulas de Java Avançado 1 - Faculdade iDez 2010
Aulas de Java Avançado 1 - Faculdade iDez 2010Aulas de Java Avançado 1 - Faculdade iDez 2010
Aulas de Java Avançado 1 - Faculdade iDez 2010Maurício Linhares
 
Apresentação palestra ireport
Apresentação palestra ireportApresentação palestra ireport
Apresentação palestra ireportfpsgyn
 
Inovações Na Plataforma Java
Inovações Na Plataforma JavaInovações Na Plataforma Java
Inovações Na Plataforma JavaFilipe Portes
 
001 cesep - turma java
001   cesep - turma java001   cesep - turma java
001 cesep - turma javaJunior Souza
 

Semelhante a JPA e Hibernate ORM para Java (20)

Introdução ao JPA com Hibernate
Introdução ao JPA com HibernateIntrodução ao JPA com Hibernate
Introdução ao JPA com Hibernate
 
JPA INTRODUÇÃO
JPA INTRODUÇÃOJPA INTRODUÇÃO
JPA INTRODUÇÃO
 
Solisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para PostgresqlSolisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para Postgresql
 
Repensando padrões e boas práticas java ee
Repensando padrões e boas práticas java eeRepensando padrões e boas práticas java ee
Repensando padrões e boas práticas java ee
 
Java virtual machine quantas linguas fala a jvm2
Java virtual machine   quantas linguas fala a jvm2Java virtual machine   quantas linguas fala a jvm2
Java virtual machine quantas linguas fala a jvm2
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
Apache e Java
Apache e JavaApache e Java
Apache e Java
 
Linguagens Dinamicas na JVM
Linguagens Dinamicas na JVMLinguagens Dinamicas na JVM
Linguagens Dinamicas na JVM
 
Hibernate
HibernateHibernate
Hibernate
 
Mini curso hibernate com anotações
Mini curso hibernate com anotaçõesMini curso hibernate com anotações
Mini curso hibernate com anotações
 
Mini curso hibernate com anotações
Mini curso hibernate com anotaçõesMini curso hibernate com anotações
Mini curso hibernate com anotações
 
Aulas de Java Avançado 1 - Faculdade iDez 2010
Aulas de Java Avançado 1 - Faculdade iDez 2010Aulas de Java Avançado 1 - Faculdade iDez 2010
Aulas de Java Avançado 1 - Faculdade iDez 2010
 
Apresentação palestra ireport
Apresentação palestra ireportApresentação palestra ireport
Apresentação palestra ireport
 
01 introducao ao java
01   introducao ao java01   introducao ao java
01 introducao ao java
 
O Spring está morto! Viva o Spring!
O Spring está morto! Viva o Spring!O Spring está morto! Viva o Spring!
O Spring está morto! Viva o Spring!
 
Hibernate conceitos
Hibernate conceitosHibernate conceitos
Hibernate conceitos
 
Inovações Na Plataforma Java
Inovações Na Plataforma JavaInovações Na Plataforma Java
Inovações Na Plataforma Java
 
Java20141215 17[1]
Java20141215 17[1]Java20141215 17[1]
Java20141215 17[1]
 
001 cesep - turma java
001   cesep - turma java001   cesep - turma java
001 cesep - turma java
 

JPA e Hibernate ORM para Java

  • 2. programacaoc William A R de Avila & Robson da Costa Programação C - Faculdade Dom Bosco de Porto Alegre - RS - Brasil
  • 3. Introdução ➢Informação (datas,valores) ➢SGBD ➢Modelo relaciona x Modelo Orientado a objetos ➢ORM ORM, é um mecanismo mediador utilizado para converte as informações de um modelo de dados relacional e um modelo orientado a objetos.
  • 4. javapersistence api- jpa ➢ API padrão do JAVA ➢ Conceito de POJO (usa o conceito de entidade, que permite gravar os objetos na base de dados) ➢ ORM permite transformarmos as tabelas do banco em classes ➢ Programador passa a usar a programação em JAVA ao invés de comandos SQL ➢ Para isso se usa metadados que podem ser desenvolvidos em XML
  • 5. Hibernate ➢ Framework escrito em JAVA ➢ Utiliza linguagem HQL(Hibernate Query Language) ➢ Usa funções para consulta e escrita de dados, permitindo que o software codificado trabalhe com muitos bancos diferentes ➢ HQL é totalmente orientada a Objeto porém muito parecida com o SQL ➢ Você pode optar por utilizar SQL sobre o Java ao invés do contrario
  • 6. Hibernate ➢ Facilita portabilidade do banco ➢ Ao lado podemos visualizar o funcionamento do Hibernate ➢ Vantagens: ○ Simplifica o código ○ Abstrai a parte do BD ○ Evita reescrever códigos SQL
  • 7. JavaPersistence Query Language ➢ Linguagem que o JAVA utiliza para comunicação com BD ➢ Utilizado para fazer consultas a entidades armazenadas no BD ➢ Semelhante ao SQL ➢ SELECT a FROM autor1 ORDER BY a.nome,a.sobrenome;
  • 8. JAPIeHibernate ➢JAPI, versão atual 2.x, surge para apoiar os problemas existentes com persistência durante o uso do EJB ➢O Hibernate ja na versão 4.x, incorpora anotações no código, substituindo XML ➢Assim como JPA e JPQL surgem para apoiar o desenvolvedor na implementação do persistencia em Java
  • 9. Alternativasdisponíveis - JBDC - Conjunto de classess escritas em Java que permite complexas consultas SQL - EclipseLink, um framework semelhante ao Hibernate que utiliza sua linguagem prpria para executar query - Apache OpenJPA, outro framework semelhante ao hibernate que utiliza Java Query e também sua própria linguagem para executar query
  • 10. JAPIeHibernate ➢O JPA implementa a facilidade de tornar objetos simples com algum construtor default , persistíveis ➢Sendo assim bastam anotações no código ou um metadados XML para o mapeamento relacional ➢HQL é orientada a objeto ➢O Hibernate cria todos os comandos SQL, independente do banco, efetuando inclusive o port automatico
  • 12. ➢Ao Executar a classe é transformada em uma simples tabela, claro que para tal foi necessário configurar o login no arquivo xml. JAPIexemplosdecódigo
  • 13. Hibernateexemplosdecódigo ➢Após criarmos a tabela, teremos que criar a classe no Java como no exemplo
  • 14. Hibernateexemplosdecódigo ➢Agora temos que criar o XML para fazer o relacionamento entre atributo e os campos da tabela
  • 15. Hibernateexemplosdecódigo ➢Agora criar o arquivo para conectar com o banco de dados ➢Criação de um arquivo onde é instanciado as classes: