Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
PROGRAMAÇÃO ORIENTADA A OBJETOS Aula 7- Acessando os dados através JDBC Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Conteúdo Programático desta aula Compreender os comando existentes para acesso e manipulação de dados nos Bancos de dados Apresentar os dados obtidos no banco de dados nos componentes da tela Efetuar comandos de modificação no banco de dados com informações retiradas dos componentes da interface Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Manipulando os dados através do JDBC O JDBC utiliza o SQL para manipular dos dados armazenados no SGBD. Cada JDBC fornecido pelo fabricante deverá implementar os mecanismos de execução e de conversão de dados para que seja possível acessar os dados. Através de uma conexão estabelecida com o banco de dados, utilizamos a Interface Statement para enviar os comandos SQL ao Banco. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS As classes de Manipulação O JDBC disponibiliza 3 tipos de tratamento para comandos SQL: Statement Envia o texto SQL para o SGBD. Possui duas subinterfaces: PreparedStatement Monta o SQL com parâmetros para depois enviar para o SGBD CallableStatement Similar ao Prepared Statement, mas permite executar procedimentos SQL Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Interface Statement Objeto usado para executar um comando SQL estático e retornar o resultado produzido. Suas características são: É criado a partir do método createStatement() da classe Connection. Só se pode criar um Statement após ter estabelecido uma conexão com o objeto Connection Pode enviar quantos SQL’s quantos forem necessários através do mesmo Statement. A partir de uma conexão, pode-se criar quantos objetos Statements forem necessários. Por padrão, cada Statement pode gerar apenas um objeto ResultSet por vez. Não há possibilidade manter mais de um ResultSet’s aberto para o mesmo Statement. Para se trabalhar com mais de um ResultSet simultaneamente, é preciso ter mais de um objeto Statement. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Os Principais métodos Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Interface ResultSet Uma tabela de dados que representa o resultado de uma consulta em uma base de dados. Geralmente gerada através de uma consulta enviada pelo objeto Statement. O objeto ResultSet mantém um cursor apontando para a linha corrente de dados. Inicialmente, este cursor aponta para a linha anterior a primeira. O método next movimenta o cursor sempre para a próxima linha. Retornando false quando não existir tal informação. Este método é comumente usado em um laço while para varrer todo o conjunto de dados. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Interface PreparedStatement É um objeto que representa um comando SQL pré-compilado. Utilizado para executar um comando repetidas vezes. Tais comandos podem conter parâmetros a serem definidos em tempo de execução. O PreperadStatement é um sub-tipo do Statement. É gerado com o método prepareStatement() da Connection. Em um comando SQL de um objeto PreparedStatement pode possuir parâmetros. Estes parâmetros são identificados como pontos de interrogação. Estes pontos deverão ser definidos com os comandos setXXX, informando nos parâmetros, o número do ponto e seu valor. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Interface CallableStatement Quando precisamos executar stored procedures (Comandos SQL armazenados em forma de procedimentos), utilizamos a Interface CallableStatement. Ela é um sub-tipo de PreparedStatement que, além de permitir a passagem de parâmetros, também permite o retorno de valores. É válido lembrar que esta interface só estará disponível nos bancos que disponibilizam este tipo de procedimento. Como é permitido passar parâmetros tanto para entrada IN como para saída OUT, esta Interface funciona exatamente igual para os parâmetros IN e numera os parâmetros de saída que deverão ser definidos. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Exercício Fornece um conjunto de API’s de acesso Com o exercício feito na aula 6, vamos fazer um CRUD completo para a tabela Cliente no banco de dados dbCliente criado no PostgreSQL. A Interface a ser desenvolvida deverá seguir o padrão apresentado abaixo: CRUD – Acrônimo para Create, Read, Update e Delete, que são as 4 operações básicas utilizadas em um banco de dados relacional. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Consulta Ao clicar no botão incluir, será feita uma pesquisa no banco para buscar todos os clientes da loja. Com o conjunto de dados retornado, são criados objetos Cliente e estes adicionados em uma lista. Vamos utilizar o ListIterator para andarmos na lista tanto para frente quando para trás. Observe que será apresentado o primeiro cliente e os botões estarão habilitados. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Inclusão Ao clicar no botão Incluir, foi criado uma estrutura de inclusão de dados, onde limpamos os campos e habilitamos o botão Incluir. Quando clicamos no botão Incluir, o objeto Cliente é criado e incluído no banco de dados. O botão de Inclusão serve tanto para incluir quanto para alterar. Para isso, foi colocado um comando if para determinar que parte do código deverá ser executado. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS Alterar No Botão Alterar, foi implementado a opção do usuário cancelar a alteração. Abaixo está apresentado o método. Tema da Apresentação ACESSANDO OS DADOS ATRAVÉS JDBC – AULA 7 PROGRAMAÇÃO ORIENTADA A OBJETOS FIM Tema da Apresentação
Compartilhar