persistência com java julio m. faerman. introdução persistência em arquivos # 2

15
Persistência com Java Julio M. Faerman

Upload: internet

Post on 17-Apr-2015

118 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Persistência com Java

Julio M. Faerman

Page 2: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Introdução

Persistência em Arquivos

# 2

Page 3: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Recursos

http://jfaerman.googlepages.com/• Apresentações• Exemplos• Exercícios• Tutoriais• Links• Downloads

Persistência em Arquivos

# 3

Page 4: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Persistência em arquivos

Persistência em Arquivos

# 4

.dat.dat

.xml.xml

.csv.csv

.txt.txt

Page 5: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Serialização e Fluxos de I/O

Persistência em Arquivos

# 5

Serialização

Serialização 1010100010101010001010101000101010100010

.dat.dat

byte[]

byte[]

Page 6: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

APIs Relevantes

• IO– I/O Básico

• NIO– I/O Avançado– I/O Não bloqueante– Arquivos mapeados na

memória– Locking

• XMLEncoder/XMLDecoder– Serialização em XML

• XML– SAX

• XML por eventos

– DOM• XML por árvore

– STAX• Controle do Parsing

– JAXB• Conversão Java -

XML

Persistência em Arquivos

# 6

Page 7: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Exercício: Definição de um sistema• Dominios

– Locadora– Agenda– Varejo– Hospital– Banca– Posto– Fazenda– Finanças

• Entidades– Participante/

Lugar/Coisa– Papel– Descrição/Tipos– Transação/

Acontecimento

Persistência em Arquivos

# 7

Page 8: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

CRUD em arquivos para uma entidade

CreateReadUpdateDelete

“90% of everything is crud”-Sturgeon’s Law

Persistência em Arquivos

# 8

Page 9: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Sistemas Gerenciadores de Bancos de Dados• Hierarquico• Rede• Relacional• Pós-relacional• Orientado a Objetos• Temporal• XML• Prevalente

Persistência em Arquivos

# 9

Page 10: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Prevalência

Persistência em Arquivos

# 10

Transação

Transação

Tradicional

Tradicional

Prevalente

Prevalente

Page 11: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Modelagem Relacional

FilmeID Nome Gener

oLançamento

Persistência em Arquivos

# 11

Pessoa

Atuação

Page 12: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Structured Query Language

• SELECT a,b,c FROM d,e WHERE f,g

Persistência em Arquivos

# 12

Page 13: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Ferramentas

Persistência em Arquivos

# 13

Page 14: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Exercício: Desenvolvimento do banco

• Quebra-cabeças:– Equals– Oddity

Persistência em Arquivos

# 14

Page 15: Persistência com Java Julio M. Faerman. Introdução Persistência em Arquivos # 2

Persistência em Arquivos

# 15

Dúvidas ?