A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

PSW1 Prof. Rafael. 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.

Apresentações semelhantes


Apresentação em tema: "PSW1 Prof. Rafael. 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."— Transcrição da apresentação:

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

5

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.


Carregar ppt "PSW1 Prof. Rafael. 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."

Apresentações semelhantes


Anúncios Google