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:

Jpa, hibernate and jpql

  • 1.
  • 2.
    programacaoc William A Rde 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 ModeloOrientado 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 ➢ APIpadrã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 escritoem 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 portabilidadedo 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 ➢ Linguagemque 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 atual2.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 implementaa 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
  • 11.
  • 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 atabela, teremos que criar a classe no Java como no exemplo
  • 14.
    Hibernateexemplosdecódigo ➢Agora temos quecriar o XML para fazer o relacionamento entre atributo e os campos da tabela
  • 15.
    Hibernateexemplosdecódigo ➢Agora criar oarquivo para conectar com o banco de dados ➢Criação de um arquivo onde é instanciado as classes: