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

Documentos relacionados
INE 5612 Professor: Frank Siqueira. Leonardo Silva Jean Ercilio Thiago

Persistência de dados com Java e Hibernate Annotations

Carlos S. Rodrigues Leonardo Lino Vieira Eric Felipe Barboza Antonio Vasconcellos

Resolvendo objeto-relacional impedance mismatch com hibernate

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate

Hibernate: Consultas (Parte II) Clodis Boscarioli

Figura 1.1 Código de inserção não baseado em Hibernate. Figura 1.2 Código de inserção baseado em Hibernate

Mecanismo de Persistência

UTILIZAÇÃO DO FRAMEWORK HIBERNATE NA CONSTRUÇÃO DE UM SISTEMA DE INFORMAÇÃO

Curso de Java. Acesso a banco de dados através do Hibernate. Todos os direitos reservados Klais

Hibernate Anotations

Mapeando Relacionamentos Entre Classes com Anotações Hibernate Por: Raphaela Galhardo Fernandes Gleydson de Azevedo F. Lima

Módulo III Camada de Persistência

UNIVERSIDADE FEDERAL DA GRANDE DOURADOS PRÓ-REITORIA DE GRADUAÇÃO PROGRAD FACULDADE DE CIÊNCIAS EXATAS E TECNOLOGIA CURSO DE SISTEMAS DE INFORMAÇÃO

Sistemas de Banco de Dados

HIBERNATE EM APLICAÇÃO JAVA WEB

Acadêmico: Samuel Y. Deschamps Orientador: Prof. Jacques R. Heckmann

JPA Java Persistence API. Prof. Ramon Chiara

MAPEAMENTO OBJETO RELACIONAL COM HIBERNATE EM APLICAÇÕES JAVA WEB

BANCO DE DADOS. info 3º ano. Prof. Diemesleno Souza Carvalho

Hibernate na sua aplicação JavaWeb

SIMONE CARDOSO DA SILVA CONSTRUÇÃO DE UMA CLASSE DE PERSISTÊNCIA GENÉRICA UTILIZANDO O FRAMEWORK HIBERNATE


JPA Com Hibernate. Paulo Ricardo Lisboa de Almeida. Dados Transientes e Relacionamentos. 1 Universidade Positivo

BCD29008 Banco de dados

PERSISTÊNCIA DE DADOS EM JAVA UTILIZANDO HIBERNATE: Mapeamento Objeto / Relacional

Hibernate: Consultas. Clodis Boscarioli

Framework Hibernate/JPA

PHP INTEGRAÇÃO COM MYSQL PARTE 1

Persistência de dados com JPA. Hélder Antero Amaral Nunes

Parte III Persistência entre Modelos de Dados

Persistência de Dados em Java com JPA e Toplink

COMPORTAMENTOS - Observações

Desenvolvimento Web com Java. Sérgio Lopes Caelum -

Continuação... Criando a Interface e adiante

Banco de Dados I Introdução SQL

PLANO DE ENSINO INSTITUTO FEDERAL SUL-RIO-GRANDENSE CAMPUS SAPUCAIA DO SUL PRÓ-REITORIA DE ENSINO

Técni n c i as e L i L n i g n u g age g ns n p ara r Ba B nc n o d e D ados I ACCESS

A linguagem SQL

Lista 02 Sistema de Banco de Dados CAP 241 Computação Aplicada I

JPA Passo a Passo. Henrique Eduardo M. Oliveira henrique@voffice.com.br. Globalcode Open4Education

WebApps em Java com uso de Frameworks

Hibernate. Mapeamento Objeto-Relacional. Prof. Anselmo Cardoso Paiva Prof. Geraldo Braz Junior

Criando uma aplicação web. Parte 1

Manipulação de Dados com SQL

Série Rações Semanais JPA & Hibernate Rogério Araújo

Aula 2 - Revisão de JPA (Java Persistence API)

Parte II Persistência entre Modelos de Dados

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV2-01. Luiz Leão

JPA: Persistência padronizada em Java

Java Standard Edition (JSE)

Struts 2 : Projeto e Programação Editora: Ciência Moderna Autor: Antunes Budi Kurniawan Número de páginas: 600

BCD29008 Banco de dados

Conexão Java Mini-curso Hibernate

Programação Orientada a Objetos

Linguagem de Consulta - SQL

BANCO DE DADOS ORIENTADO A OBJETOS

BCD29008 Banco de dados

Persistência de Objetos

Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:

A linguagem SQL

LINGUAGEM SQL Linguagem usada em SGBD para: Definir estrutura de dados; Modificar dados em um banco de dados; Especificar restrições de segurança; Rea

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

UNIVERSIDADE FEDERAL DO PIAUÍ DEPARTAMENTO DE COMPUTÇÃO DISCIPLINA: ENGENHARIA DE SOFTWARE II PROFESSOR: ARMANDO SOARES

CONTEÚDO PROGRAMÁTICO

Banco de Dados. Maurício Edgar Stivanello

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

Mapeamento Objeto-Relacional

AULA 07 HIBERNATE. Ao término desse capítulo você terá aprendido: Fundamentos do MVC Estrutura dos pacotes no NetBeans

Banco de Dados Modelagem Conceitual de Dados. Prof. Edjandir Corrêa Costa

A & F Consultoria em Sistemas e Treinamentos 2014 af.tecnoserv@gmail.com. A linguagem SQL. Autor: Hélio de Almeida Fonte: Wikipédia

Banco de Dados. -Aprendendo conceitos -Usando o SQL Conf para: -Conectar no banco de dados -Criar, alterar, excluir e consultar estruturas de tabelas

DANIELLE MATIAS MATUDA SISTEMA WEB PARA GERENCIAMENTO DE SALÃO DE BELEZA DE PEQUENO E MÉDIO PORTE

Programando em SQL. Triggers, Stored Procedures e funções. Profa. Késsia Marchi

Hibernate. Mapeamento O/R Marcio Aguiar Ribeiro

Java para WEB com Hibernate e Struts 2. Duração 52 horas/aula. Objetvo

Revisando Banco de Dados. Modelo Relacional

Java e Banco de Dados: JDBC, Hibernate e JPA

Introdução à Engenharia da Computação. Banco de Dados Professor Machado

Wesley Alves de Souza. Sistema Gerenciador de Manutenção de Equipamentos Industriais

CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGRAMAÇÃO DE SISTEMAS INFORMÁTICOS

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz

JAVA ENTERPRISE EDITION: CRIAR BEANS DE ENTIDADE A PARTIR DE TABELAS

Transcrição:

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

Relacionamento One-to-Many

Relacionamento Many-to-One

Relacionamento Many-to-Many

Relacionamento Many-to-Many Hibernate não aceita identificador composto. Solução: criação de uma classe do tipo identificador.

Classe Pessoa Classe Veiculo

Classe PossuiVeiculoPK

Classe PossuiVeiculo

Tabela por classe concreta Tabela por hierarquia Tabela por subclasse

Tabela por classe concreta Criada uma tabela/classe independente para cada herança.

Tabela por classe concreta Classe Pessoa

Tabela por classe concreta Classe Professor

Tabela por classe concreta Classe Aluno

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 pelo Hibernate para definir o tipo do objeto.

Tabela por hierarquia Classe Pessoa

Tabela por hierarquia Classe Professor

Tabela por hierarquia Classe Aluno

Tabela por subclasse Cada classe em uma tabela diferente. As classes filhas possuem apenas os elementos que não são herdados.

Tabela por subclasse Classe Pessoa

Tabela por subclasse Classe Professor

Tabela por subclasse Classe Aluno

Criteria Query API SQL Nativo HQL (Hibernate Query Language)

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)

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; }

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; }

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 Turma em HQL

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; }

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.

Mapeie as tabelas do Diagrama de Entidade Relacionamento(DER) abaixo.

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 armazenados.

Herança