Persistência em Software Orientado a Objetos:



Documentos relacionados
TRABALHO DE CONCLUSÃO DE CURSO PERSISTÊNCIA EM SOFTWARE ORIENTADO A OBJETOS: SOLUÇÕES DE MAPEAMENTO OBJETO-RELACIONAL

Estratégias de Persistência em Software Orientado a Objetos: Definição e Implementação de um Framework para Mapeamento Objeto-Relacional

UFG - Instituto de Informática

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

JPA: Persistência padronizada em Java

HIBERNATE EM APLICAÇÃO JAVA WEB

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44

CURSO DESENVOLVEDOR JAVA Edição 2010


Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate

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

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

CURSO DESENVOLVEDOR JAVA Edição 2009

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Fernando Kasten Peinado

WebApps em Java com uso de Frameworks

Capítulo 04: Persistência com SQLite

Criando Frameworks Inteligentes com PHP. Uma abordagem prática: vantagens, aplicações e procedimentos.

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

Java e Banco de Dados: JDBC, Hibernate e JPA

Mapeamento Lógico/Relacional com JPA

SISTEMA GERENCIADOR DE BANCO DE DADOS

Análise e Concepção de Sistemas de Informação

Novatec Editora Ltda. [2014].

Persistência e Banco de Dados em Jogos Digitais

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

MAPEAMENTO OBJETO-RELACIONAL EM JAVA E PHP

Resolvendo objeto-relacional impedance mismatch com hibernate

Banco de Dados. Sérgio Luiz Ruivace Cerqueira

ALTO DESEMPENHO UTILIZANDO FRAMEWORK HIBERNATE E PADRÃO JAVA PERSISTENCE API

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Persistência de Dados em Java com JPA e Toplink

Classes de Entidades Persistentes JDB

MÓDULOS DE REGISTRO DE PARA ÓRGÃOS PÚBLICOS

PHP Programando com Orientação a Objetos

UFG - Instituto de Informática

PROJETO DE BANCO DE DADOS -INTRODUÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

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

FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS. Bancos de Dados Conceitos Fundamentais

Tipos de dados complexos e objectos Tipos de dados estruturados e herança em SQL Herança de tabelas Matrizes e multi-conjuntos em SQL Identidade de

Disciplina: Unidade V: Prof.: Período:

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

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Modelo de Dados. Modelos Conceituais

MOR: Uma Ferramenta para o Mapeamento Objeto-Relacional em Java

Gestão de Tecnologia da Informação

Plano de Trabalho Docente Ensino Técnico

Banco de Dados. Conceitos e Arquitetura de Sistemas de Banco de Dados. Profa. Flávia Cristina Bernardini

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Aula 02 Modelagem de Dados. Banco de Dados. Aula 02 Modelagem de Dados. Superior /2011 Redes Computadores - Disciplina: Banco de Dados -

Banco de Dados. Profª. Ana Leda

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM COLÉGIO AGRÍCOLA DE FREDERICO WESTPHALEN BANCO DE DADOS II

APLICATIVO WEB PARA O SETOR DE EXTENSÃO IFC VIDEIRA

Programação Orientada a Objetos no C#.NET usando Padrões de Projeto MARCELO SANTOS DAIBERT E MARCO ANTÔNIO PEREIRA ARAÚJO

Banco de Dados. Maurício Edgar Stivanello

LINGUAGEM DE BANCO DE DADOS

Ensino Técnico Integrado ao Médio FORMAÇÃO PROFISSIONAL. Plano de Trabalho Docente 2014

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

Prof.: Clayton Maciel Costa

SQL. Curso Prático. Celso Henrique Poderoso de Oliveira. Novatec

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1.

UNIVERSIDADE ESTADUAL DO CENTRO-OESTE UNICENTRO CURSO DE ESPECIALIZAÇÃO EM MÍDIAS EM EDUCAÇÃO

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Introdução ao SQL. Aécio Costa

Especificação do Trabalho

sendo bastante acessível e compreendido pelos usuários que o utilizarem.

Objetivos Específico

Introdução a Sistemas de Bancos de Dados

Oficina. Praça das Três Caixas d Água Porto Velho - RO

Sistemas de Banco de Dados

HIBERNATE Criando um projeto em Java + Hibernate do zero

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PROJETO DE BANCO DE DADOS -INTRODUÇÃO. Prof. Angelo Augusto Frozza, M.Sc.

Padrão J2EE Data Access Object (DAO)

Disciplina de Banco de Dados Parte V

USANDO O IZCODE PARA GERAR SOFTWARE RAPIDAMENTE

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

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro

Modelagem de dados e uso do SGBD MySQL

Padrões de Projeto em Modelagem Orientada a Objetos Persistida em Banco de Dados Relacional

Modelo de Dados. Modelo para organização dos dados de um BD

YZAAC GONÇALVES DA SILVA

Á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:

Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados.

Dados. Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade. fatos no estado bruto, conforme Platão;

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações

Structured Query Language (SQL) Ambiente Simplificado de um SGBD

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração

PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

Sistema de Gestão para qualquer Empresa do Terceiro Setor

Profº Aldo Rocha. Banco de Dados

Eduardo Bezerra. Editora Campus/Elsevier. Princípios de Análise e Projeto de Sistemas com UML - 2ª edição

Banco de dados 1. Linguagem SQL DDL e DML. Professor: Victor Hugo L. Lopes

Transcrição:

Persistência em Software Orientado a Objetos: Abordagens Utilizando Frameworks OpenSource Marcelo Santos Daibert Orientador: Marco Antônio Pereira Araújo Co-Orientadora: Alessandreia Marta de Oliveira Julio

Agenda Motivação Contextualização Mapeamento Objeto-Relacional Camada de Persistência Frameworks de Persistência Considerações Finais 2

Motivação Crescente utilização do paradigma orientado a objetos no desenvolvimento de software Necessidade de persistência dos objetos em alguma estratégia de armazenamento: Arquivo texto, xml, serializado Banco de dados relacional, pós-relacional, orientado a objetos Atualmente os banco de dados orientado a objetos não são maduros o suficiente 3

Contextualização Persistência de Objetos Estratégias de Persistência em Banco de Dados: Orientado a objetos, objeto-relacional e relacional No contexto desta apresentação é apresentado abordagens de persistência de objetos em banco de dados relacional 4

Mapeamento Objeto-Relacional O modelo relacional de dados difere substancialmente do modelo orientado a objetos Modelo Relacional: Tabelas Linhas (tuplas) Colunas Tabelas Modelo Orientado a Objetos: Classes Atributos Objetos Relacionamentos Classes 5

Mapeamento Objeto-Relacional Consiste em mapear as classes, seus atributos e seus relacionamentos para o modelo relacional Tabelas Classes Escolher um OID (Object Identification) Mapear classes para tabelas Mapear atributos para colunas Mapear os relacionamentos Herança, Associação, Composição, Agregação 6

Mapeamento Objeto-Relacional Mapear Herança Três estratégias para o mapeamento de heranças Uma tabela por hierarquia 7

Mapeamento Objeto-Relacional Uma tabela por classe concreta 8

Mapeamento Objeto-Relacional Uma tabela por classe 9

Mapeamento Objeto-Relacional Mapear Relacionamentos Do Tipo 1:1 Do Tipo 1:N 10

Mapeamento Objeto-Relacional Do Tipo N:N 11

Camada de Persistência Estrutura agregada ao sistema responsável pela persistência e manipulação dos objetos Três estratégias para persistência de objetos em um banco de dados relacional: Camada SQL SQL SGBDR Classes de Domínio 12

Camada de Persistência Camada de Classes de Acesso a Dados SQL SGBDR Classes de Domínio Classes de Acesso a Dados Camada de Persistência Camada de Persistência SQL SGBDR Classes de Domínio 13

Frameworks de Persistência Conceito: Solução completa e genérica para camada de persistência de objetos: Conexão ao banco de dados relacional Mapeamento Objeto-Relacional Persistência de Objetos Manipulação de Objetos CRUD: Create Criar Retrieve Recuperar Update Atualizar Delete Excluir 14

Frameworks de Persistência Kylix / Delphi DePO* (Delphi Persistent Objects) http://www.liws.com.br/depo TiOPF (TechInsite Object Persistence Framework) http://www.techinsite.com.au/tiopf/ Instant Objects PHP http://www.instantobjects.org/ Miolo http://www.miolo.org.br *DAIBERT, M. S., ARAÚJO, M. A. P., JULIO, A. M. O. Persistência de Objetos no Delphi: Introdução ao DePO (Delphi Persistent Objects). Clube Delphi, dez 2005. 15

Frameworks de Persistência Java: Hibernate http://www.hibernate.org/ Prevayler http://www.prevayler.org/ JBanana http://jbanana.c3sl.ufpr.br/ JDO (Java Data Objects) http://java.sun.com/products/jdo/ CMP e BMP (Container/Bean Managed Persistence) http://java.sun.com/products/ejb/ 16

Frameworks de Persistência Plataforma.NET: NHibernate http://www.nhibernate.org/ Gentle.Net http://sourceforge.net/projects/gopf XPrevail http://xprevail.sourceforge.net/ 17

Considerações Finais Os frameworks de persistência buscam facilitar o desenvolvimento do software, associando: Velocidade e maturidade dos bancos de dados relacionais Com as vantagens do paradigma orientado a objetos 18

Persistência em Software Orientado a Objetos: Abordagens Utilizando Frameworks OpenSource {msdaiber, maraujo, amojulio} @granbery.com.br Marcelo Santos Daibert Orientador: Marco Antônio Pereira Araújo Co-Orientadora: Alessandreia Marta de Oliveira Julio