Persistência com Java
Julio M. Faerman
Persistência em Arquivos
Introdução
#2
Persistência em Arquivos
Recursos
http://jfaerman.googlepages.com/
• Apresentações
• Exemplos
• Exercícios
• Tutoriais
• Links
• Downloads
#3
Persistência em Arquivos
Persistência em arquivos
.dat
.xml
.csv
.txt
#4
Persistência em Arquivos
Serialização e Fluxos de I/O
Serialização
FileOutputStream
.dat
ByteArrayOutputStream
byte[]
1010100010
#5
Persistência em Arquivos
APIs Relevantes
• IO
– I/O Básico
• NIO
– I/O Avançado
– I/O Não bloqueante
– Arquivos mapeados na
memória
– Locking
• XMLEncoder/XMLDeco
der
• XML
– SAX
• XML por eventos
– DOM
• XML por árvore
– STAX
• Controle do Parsing
– JAXB
• Conversão Java - XML
– Serialização em XML
#6
Persistência em Arquivos
Exercício: Definição de um sistema
• Dominios
–
–
–
–
–
–
–
–
Locadora
Agenda
Varejo
Hospital
Banca
Posto
Fazenda
Finanças
• Entidades
– Participante/Lugar/C
oisa
– Papel
– Descrição/Tipos
– Transação/Acontecim
ento
#7
Persistência em Arquivos
CRUD em arquivos para uma entidade
Create
Read
Update
Delete
“90% of everything is crud”
-Sturgeon’s Law
#8
Persistência em Arquivos
Sistemas Gerenciadores de
Bancos de Dados
• Hierarquico
• Rede
• Relacional
• Pós-relacional
• Orientado a Objetos
• Temporal
• XML
• Prevalente
#9
Persistência em Arquivos
Prevalência
Tradicional
Transação
Prevalente
# 10
Persistência em Arquivos
Modelagem Relacional
Filme
ID
Nome
Genero
Pessoa
Lançam
ento
Atuação
# 11
Persistência em Arquivos
Structured Query Language
• SELECT a,b,c FROM d,e WHERE f,g
# 12
Persistência em Arquivos
Ferramentas
# 13
Persistência em Arquivos
Exercício: Desenvolvimento do banco
• Quebra-cabeças:
– Equals
– Oddity
# 14
Persistência em Arquivos
Dúvidas ?
# 15
Download

Relacional