• Nenhum resultado encontrado

One-to-Many. Many-to-One. Many-to-Many

N/A
N/A
Protected

Academic year: 2021

Share "One-to-Many. Many-to-One. Many-to-Many"

Copied!
35
0
0

Texto

(1)

One-to-Many

Many-to-One

Many-to-Many

(2)
(3)
(4)
(5)
(6)
(7)
(8)

Relacionamento Many-to-Many

Hibernate não aceita identificador composto.

(9)

Classe Pessoa

(10)
(11)
(12)

Tabela por classe concreta

Tabela por hierarquia

(13)

Tabela por classe concreta

Criada uma tabela/classe independente para cada

(14)

Tabela por classe concreta

(15)

Tabela por classe concreta

Classe Professor

(16)

Tabela por classe concreta

Classe Aluno

(17)

Tabela por hierarquia

Todos os atributos da classe mãe e das classes filhas são

armazenados em uma única tabela.

Propriedades not null não são permitidas para as

subclasses.

Coluna especial discriminator, utilizada internamente

(18)

Tabela por hierarquia

Classe Pessoa

(19)

Tabela por hierarquia

Classe Professor

(20)

Tabela por hierarquia

Classe Aluno

(21)

Tabela por subclasse

Cada classe em uma tabela

diferente.

As classes filhas possuem

apenas os elementos que

não são herdados.

(22)

Tabela por subclasse

Classe Pessoa

(23)

Tabela por subclasse

Classe Professor

(24)

Tabela por subclasse

Classe Aluno

(25)

Criteria Query API

SQL Nativo

HQL

(26)

Criteria Query API

Conjunto de classes para criação de querys em Java.

Querys definidas programaticamente.

Independência do banco de dados (dialeto SQL)

http://ajava.org/online/hibernate3api/org/hiberna

te/Criteria.html#add(org.hibernate.criterion.

Criterion)

(27)

Criteria Query API

Public Lista Consulta () { List lista = new List();

this.session = HibernateUtil.getInstance();

Criteria cri = session.createCriteria(Pessoa.class); cri.add(Restriction.eq(“codPessoa”,1); cri.addOrder.asc(“nome”); lista = cri.list(); tx.commit(); sessao.close(); return lista; }

(28)

SQL Nativo

Faz uso do SQL nativo das consultas SQL

tradicionais.

Public Lista Consulta () { List lista = new List();

Session sessao = HibernateUtility.getSession();

List lista = sessao.createSQLQuery("SELECT * FROM CATS") .list(); tx.commit();

sessao.close(); return lista; }

(29)

HQL (Hibernate Query Language)

Extensão do SQL

Faz pesquisa em objetos

Pesquisa feita em objetos

Não é necessário selecionar colunas do banco de

dados

Um select * from Turma em SQL, vira select

(30)

HQL (Hibernate Query Language)

Public Lista Consulta () {

List lista = new List();

Session sessao = HibernateUtility.getSession(); Transaction tx = sessao.beginTransaction();

Query select = sessao.createQuery("from Turma as turma where turma.nome = :nome");

select.setString("nome", "Jornalismo"); List lista = select.list();

tx.commit(); sessao.close(); return lista; }

(31)
(32)

WWW.HIBERNATE.ORG

Bauer C, King G. Hibernate in action, Vol.1.

Greenwich, CT: Manning Publications Co.; 2004.

GONÇALVES, Edson. Desenvolvendo aplicações web

com jsp, servlets, javaserver faces, hibernate, ejb 3

persistence e ajax. Rio de Janeiro: Ciência Moderna,

2007.

LINHARES, Maurício. Introdução ao Hibernate 3.

Grupo de usuários Java. Disponível em

<http://www.guj.com.br/content/articles/hibernate/int

ruducao_hibernate3_guj.pdf >. Acesso em 2009.

(33)

Mapeie as tabelas do Diagrama de Entidade

(34)

Crie um sistema que cadastra, altere, consulte e delete dados de um banco de dados, utilizando a ferramenta de mapeamento objeto relacional hibernate para o seguinte caso:

 Uma revenda de veículos a qual ela mesma instala os opcionais nos

veículos, ela necessita de um sistema que relacione os opcionais com os veículos, ou seja, quais opcionais foram instalados no veiculo.

 Para os opcionais é necessário armazenar informações sobre o

fabricante, e para os veículos é necessário armazenar informações sobre a montadora.

 Observação: fabricante e montadoras devem ser duas tabelas

distintas.

 Para esse exercício crie também o modelo de entidade

relacionamento.

 Coloque nas tabelas os dados que você imagina que devem ser

(35)

Referências

Documentos relacionados

do programa QSR Nvivo 11. A análise dos dados permitiu concluir que: i) os professores utilizam o método global como aquele que melhor serve as suas pretensões

levadas  a  cabo  no  século  XX.  Este  Coro,  tal  como  o  do  modelo  sofocliano,  comenta,  opina  e  posiciona‐se  diante  do  conflito  trágico.  Quer 

Ainda sobre a questão energética, muitas das RUP têm vindo a desenvolver as suas capacidades no âmbito das energias renováveis, uma vez que estas regiões têm à sua

EU A RAINHA Faço Saber aos que este Alvará com força de Lei virem, que tendi-Me sido presentes os graves inconvenientes , que se seguem ao Meu Real Serviço, e a Disciplina da Minha

A fim de compreender a produção de sentidos impetrada pelas figuras dramáticas construídas para e na TV, empreenderemos breve revisão bibliográfica de autores

Figura 2 - Etiologias clínicas mais incidentes entre a população total de idosos classificados como emergência (vermelho), atendidos no pronto atendimento de um hospital privado

Afterwards, as adult cardiomyocytes (CM) (the contractile unit of the heart) do not proliferate in a sustainable manner, the heart engages on a reparative