Hibernate - deinf.ufma.brgeraldo/poo/12.Hibernate2.pdf · Hibernate Prof. Anselmo Cardoso Paiva...
Transcript of Hibernate - deinf.ufma.brgeraldo/poo/12.Hibernate2.pdf · Hibernate Prof. Anselmo Cardoso Paiva...
Hibernate
Prof. Anselmo Cardoso Paiva
Prof. Geraldo Braz JuniorBaseado nas notas de aula de João Dalyson
e Raphaela Galhardo Fernandes
Query
Introdução Até Agora:
Consulta por chave primária;
Recuperação via mapeamentos de relacionamentos:
@OneToMany;
@ManyToOne;
@OneToOne;
@ManyToMany;
2
Introdução Outras Possibilidades com Hibernate:
SQL Nativo (SQLQuery);
Consulta por Critérios (Criteria);
Hibernate Query Language (Query).
3
SQL Native
4
SQL Nativo O Hibernate permite especificar SQL escrito
manualmente:
Utilização da Interface SQLQuery;
A partir do objeto Session:
Session.createSQLQuery().
5
SQL Nativo – Consultas
6
SQL Nativo – Entity Queries
7
HQL - Hibernate QueryLanguage
8
HQL – Hibernate Query Language
Linguagem de consulta;
Sintaxe orientada a objetos;
De fácil entendimento;
Suporta:
Herança, polimorfismo;
Associações;
Agregações, ordenações, paginação;
Sub-consultas, joins;
Projeções, etc.
9
HQL – Hibernate Query Language
10
HQL - Joins
11
HQL - Select
12
HQL - Select
13
HQL - Where
14
HQL - Expressões
15
HQL - Agregação
16
HQL – Group e Order by
17
HQL - Subqueries
18
Usando HQL
19
HQL – Join Estilo Theta Join estilo Theta:
Usado para fazer joins entre classes que não possuem associações no Hibernate.
Podem estar associadas no banco de dados.
20
HQL - Paginação Consulta recupera do banco apenas as
linhas dentro de uma faixa de resultados
21
HQL – Nomeação de Parâmetros Possibilidade de nomear parâmetros para
definí-los posteriormente
22
HQL - Atualizações
23