Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouMoisés Malheiro Caiado Alterado mais de 8 anos atrás
1
PSW1 Prof. Rafael
2
Persistência Atividade que permite que o estado de um objeto exista mesmo após a extinção do processo computacional que o criou. Em outras palavras, trata-se de armazenar em memória não volátil informações suficientes para restaurar um objeto em um momento posterior.
3
Persistência A persistência de um objeto geralmente requer que ele seja serializável Objetos serializáveis são aqueles que possuem a capacidade de representar seus dados em uma serie de informações. Essa série é armazenável em arquivos e ‘enviável’ através da rede. Pode ser em formato texto ou binário. Em Java usa-se o midleware JDBC para implementar persistência de objetos Rafael:Professor -------------------------------------------- String nome; [rafael] String disciplinas; [psw1,poo] String campus; [Taguatinga1] Professor|rafael|psw1,poo|Taguatinga1 Professor -------------------------------------------- String nome; String disciplinas; String campus; Professor|Rogerio|psd,rec|Taguatinga1 ClasseObjetoSerialização
4
Midleware
6
Middleware JDBC
7
JDBC e SGBD são coisas diferentes JDBC é um meio (padrão) para acessar o SGBD SGBD é o Sistema gerenciador de Banco de Dados Java DB é um SGBD 100% em Java Faz parte do projeto Apache Derby Instalado junto com o suporte Java EE no NetBeans Facilmente utilizável por meio do NetBeans Exceto no UniCeub, pois temos um bloqueio na porta padrão. Vamos tentar superá-lo juntos!
8
JAVA DB no Netbeans Roda na porta 1527 No arquivo java.policy é preciso existir a entrada grant { permission java.net.SocketPermission "localhost:1527", "listen"; }; Não temos permissão para alterar o java.policy Vamos tentar alterar a porta do banco...
9
Utilizando o banco Criar uma tabela Cliente Nome Cpf Email Criar um método persistir() no cliente Inserir código para salvar o cliente no banco Criar um método restaurar() no cliente Inserir código para restaurar o cliente com os dados do banco.
10
Persistência A solução apresentada anteriormente implementa o padrão bean- managed persistence. Cada objeto implementa sua própria persistência Maior aderência com a orientação a objetos Menor complexidade da solução Pouca flexibilidade para alterações de fontes de dados. Pouca oportunidade de reutilização de código Objetos muito grandes, com lógica de negócio e de infra- estrutura(persistência) misturadas. Caso necessitemos de um método que busca todos os clientes, em qual classe estaria esse método? Caso precisássemos listar apenas o nome dos clientes, como fazer?
11
DAO – Data Access Object Padrão de projeto que sugere que se crie um objeto dedicado a implementar a persistência das entidades. Propõe a separação entre instruções de acesso a dados e código correspondente a negócio. A persistência é feita por meio do DAO, que recebe objetos a salvar e retorna objetos solicitados.
12
DAO – Data Access Object StudentDao studentDao = new StudentDao(); Student student = studentDao.getStudentByNumber(“RA022023”) student.setStatus(“ACTIVE"); studentDao.updateStudent(student);
13
DAO – Data Access Object Main(StudentDao dao) { StudentDao studentDao = dao; Student student = studentDao.getStudentByNumber(“RA022023”) student.setStatus(“ACTIVE"); studentDao.updateStudent(student); } Main( new StudentDaoImpl()); O uso de interfaces permite trocar a fonte de dados sem alterações no cliente.
14
DAO – Data Access Layer Vantagens Possibilita transparência do acesso aos dados – Os beans não sabem como acessar seus dados. Seu foco é exclusivamente as regras de negócio. Há redução de complexidade do bean. Possibilita fácil alteração da fonte de dados – basta trocar o DAO. Centraliza o código de acesso a dados em uma camada explícita – Facilita localização do código de dados e consequentemente facilita a manutenção.
15
DAO – Data Access layer Desvantagens Adição de mais objetos e camadas. Dispensável se o contêiner da aplicação já oferecer serviços de persistência (EJB por exemplo)
16
DAO – Data Access layer Altere o projeto Beans com persistência para fazer com que o acesso aos dados se dê por meio de DAO.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.