Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 UNIVERSIDADE VEIGA DE ALMEIDA Programação para dispositivos móveis AVA1 Padrões de Projeto Factory, DAO e Criação de método de Busca de Aluno Prof. PAULO MÁRCIO SOUZA FREIRE Marcio Rodrigues de Freitas RIO DE JANEIRO Junho/2022 2 Introdução: O trabalho tem como objetivo, trabalhar as classes em java, usando os métodos de busca, exceção e a testagem de tudo o que foi pedido, entregando assim o resultado final, usando a ferramenta NetBeans. 3 Sumário: Conteúdo………………………………………….4 Imagens de teste………………………………...8 Conclusão………………………………………...9 Referencia………………………………………...10 4 Conteudo: a) Cite as características e vantagens do modelo de projeto Factory: R: Pode se dizer que o modelo Factory method, é um padrão que define uma interface para criar um objeto, mas permite às classes decidirem qual classe instanciar, uma vantagem do factory method é que este padrão pode retornar a mesma instância varias vezes, ou tambem pode retornar a sua subclasse, invés de um objeto, daquele tipo. b) Cite as características e vantagens do modelo de projeto DAO. R: o padrão de projeto DAO permite que, por meio de uma única classe, seja realizada toda a lógica de controle de acesso ao banco de dados, separando a lógica de negócio das outras classes. Falando de vantagens, também, a principal vantagem do Modelo DAO é ter um local onde todo o acesso a dados será concentrado. Ao invés de ter várias classes que manipulam dados espalhadas pela aplicação. 5 c) Crie um método responsável por realizar a busca de um aluno específico no banco de dados usando a matrícula como parâmetro de entrada e retornando as informações sobre o aluno e d) Implemente o tratamento de exceção no método de busca de aluno. package ava1; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; public class AlunoDAO { private Connection conexao; public AlunoDAO() throws SQLException { this.conexao = ConnectionFactory.criaConexao(); } public Aluno buscaAluno(int idMatricula) throws SQLException{ String sql = "SELECT * FROM alunos WHERE matricula = ?"; PreparedStatement stm = conexao.prepareStatement(sql); stm.setInt(1,idMatricula); ResultSet rs = stm.executeQuery(); Aluno aluno = new Aluno(); if (rs.next()){ aluno.setMatricula(rs.getInt("matricula")); aluno.setNome(rs.getString("nome")); aluno.setIdaluno(rs.getInt("idaluno")); } else{ 6 throw new SQLException("Aluno nao existe."); } rs.close(); stm.close(); return aluno; } } 7 e) Implemente um teste de funcionamento do método de busca de aluno. package ava1; import java.sql.Connection; import java.sql.SQLException; import java.util.Scanner; public class TesteAluno { public static void main(String[] args)throws SQLException { System.out.println("Abrindo Conexao!"); Connection conexao = ConnectionFactory.criaConexao(); System.out.println("Conectado"); System.out.printf("Digite aqui sua matricula: "); Scanner input = new Scanner(System.in); String stridmatricula = input.nextLine(); int idmatricula = Integer.parseInt(stridmatricula); AlunoDAO alunodao = new AlunoDAO(); Aluno aluno = (alunodao.buscaAluno(idmatricula)); System.out.printf(" nome:%s\n idmatricula:%d\n aluno:%d\n",aluno.getNome(),aluno.getMatricula(),aluno.getIdaluno()); conexao.close(); } } 8 Telas de teste: Teste aluno Lucas: Teste aluno Marcio: 9 Conclusão: O projeto foi feito usando as ferramentas e métodos pedidos, assim como a implantação do método DAO, sendo assim, totalmente configurado e funcional, do banco de dados ao código. 10 Bibliografia: Ebook UVA de POO3
Compartilhar