APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS ACESSO A BANCO DE DADOS COM O JDBC Prof. Thiago Pereira Rique thiagorique2011@gmail.com http://thiagorique.wordpress.com/

Slides:



Advertisements
Apresentações semelhantes
Soluções elegantes para problemas recorrentes
Advertisements

APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE I Prof. Thiago Pereira Rique
Aula 3 – DB2 Express-C Autor:
JDBC Java Dababase Connectivity Marco Antonio, Arquiteto de Software – TJDF Atualizado em Novembro/2008.
Prof. Alessandro J. de Souza
Java Conexão com Banco de Dados
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INTERFACES Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS CLASSES ABSTRATAS
H ERANÇA E P OLIMORFISMO Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS TRATAMENTO DE EXCEÇÕES
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE III Prof. Thiago Pereira Rique
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS COMPONENTES GUI – PARTE II Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS - LPOO APRESENTAÇÃO DA DISCIPLINA Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS MÉTODOS – UMA VISÃO MAIS APROFUNDADA Prof. Thiago Pereira Rique
Prof. Thiago Pereira Rique
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS APRESENTAÇÃO DA DISCIPLINA Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS - LPOO APRESENTAÇÃO DA DISCIPLINA Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INTRODUÇÃO À TECNOLOGIA DE OBJETOS Prof. Thiago Pereira Rique
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS CLASSES E OBJETOS – UMA VISÃO MAIS APROFUNDADA Prof. Thiago Pereira Rique
setWrapStyleWord() configura o estilo de quebra de linha setLineWrap(true) indica mudança automática de linha A linha 68 registra o objeto resultTable.
28.5 Instruções para instalar o MySQL e o MySQL Conector/J
Linguagens de Programação Orientadas a Objetos
Introdução a JDBC Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
B ANCO DE D ADOS E JDBC Profa. Msc. Cintia Carvalho Oliveira Mestre em Ciência da Computação – UFU Bacharel em Ciência da Computação - UFJF 1.
APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS RELATÓRIOS
CURSO DE ESPECIALIZAÇÃO PARTE 4: PADRÕES FACTORY E DAO
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
Java & Bancos de Dados Universidade Salgado de Oliveira Goiânia
Hibernate com JPA Prática
Java :: Persistência de Dados
Introdução ao Teste Unitário com JUnit
Aplicativos Web Com Orientação a Objetos
Acesso a Base de Dados JDBC Trabalho Realizado por:
Conexão com Bancos de Dados Carlos Bazilio Depto de Ciência e Tecnologia Pólo Universitário de Rio das Ostras Universidade Federal Fluminense.
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Integração com Banco de Dados
Design Patterns / Acesso ao banco de dados (java.sql)
Programação Orientada a objetos II
Anexo A. JDBC  Conjunto de interfaces e classes java que faz envio de consultas para um banco de dados.  Objetos(tipos)  Conexão (Driver e Connection)
JSP / Servlets Avançado
Banco de Dados de Objetos
P ROGRAMAÇÃO Prof.: Bruno Rafael de Oliveira Rodrigues.
JDBC Java Database Connectivity. JDBC Especificação para uso de base de dados em aplicações e applets JAVA; API para uso de drivers JDBC; Compatível com.
Desnvolvimento de Projetos e Aplicações Web Ceça Moraes – Ceça.
Configuração do Ambiente de programação
Programação para Web Unidade 06 – Java Beans e BDs Prof.: Henrique Santos.
CURSO JAVA BÁSICO Módulo JDBC – slide 1 MóduloJDBC.
Java Conexão com Baco de dados Saulo Bazzi Oberderfer Fonte:
JDBC Java Database Connectivity docs/guide/jdbc/getstart/introTOC.doc.html.
J AVA D ATABASE C ONNECTIVITY JDBC. JDBC O Java Database Connectivity (JDBC) API é o padrão da indústria para que aplicações Java acessem bancos de dados.
Padrões de Projetos Professora Lucélia. Conceitos É uma solução conhecida para um problema comum São técnicas que nos dão uma boa solução para determinados.
Leo Silva Leonardo Murta Luiz Viana Persistência em Java.
Java Acesso a Banco de Dados Prof. Marcos André Pisching, M.Sc.
Acesso a Banco de Dados com JDBC e DAO
Desenvolvimento WEB II Aula 3 – Conexão com o Banco de Dados
Acessando banco de dados com JAVA.  Linguagem independente de plataforma; ◦ “Write once, run anywhere” ◦ JVM  Java Virtual Machine  Mecanismo que permite.
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.
Acesso a Banco de Dados com o JDBC Prof. M.Sc. Ronnison Reges Vidal.
Desenvolvimento WEB II Professora: Kelly de Paula Cunha.
Java Módulo II Projeto Final.
Trabalho Prático de Programação Orientada a Objetos em Java Programação Orientada a Objetos Ludimila Monjardim Casagrande 2011.
Introdução a Padrões de Projeto Padrões de Projeto Orientado a Objetos Profa. Danielle Martin Universidade de Mogi das Cruzes.
Persistência de dados e padrão DAO
Banco de Dados Relacionais. Tabelas DB Relacionais são baseados em tabelas As tabelas armazenam registros Cada registro ocupa uma linha da tabela Registros.
Prof.: Jean Carlo Mendes
Persistência de dados e padrão DAO Padrões de Projeto Orientado a Objetos Profa. Danielle Martin/Mauricio Universidade de Mogi das Cruzes.
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Persistência de dados e padrão DAO
Acesso a Banco de dados com JDBC
Transcrição da apresentação:

APLICAÇÕES DE LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS ACESSO A BANCO DE DADOS COM O JDBC Prof. Thiago Pereira Rique thiagorique2011@gmail.com http://thiagorique.wordpress.com/

Agenda Introdução A conexão em Java Manipulando bancos de dados com o JDBC PreparedStatements DAO – Data Access Object

INTRODUÇÃO Banco de dados Sistema de Gerenciamento de Banco de Dados (SGBD) Linguagem SQL Java Database Connectivity (JDBC) API

A CONEXÃO EM JAVA Temos um único conjunto de interfaces muito bem definidas que devem ser implementadas. Esse conjunto de interfaces fica dentro do pacote java.sql e nos referimos a ele como JDBC. BD Aplicação Implementação JDBC. Qual? Interface JDBC

A CONEXÃO EM JAVA A interface Connection define métodos para executar uma query, fechar uma conexão, entre outros. Precisamos de classes concretas que implementem essas interfaces do pacote java.sql. Esse conjunto de classes concretas fará a ponte entre o código cliente que usa a API JDBC e o banco de dados. Drivers JDBC.

A CONEXÃO EM JAVA Para abrir uma conexão com um banco de dados, precisamos de um driver. A classe DriverManager é responsável por se comunicar com o driver. DriverManager.getConnection(“jdbc:postgresql://localhost/teste”); Aplicação BD Implementação JDBC PostgreSQL Interface JDBC

Manipulando bancos de dados com o JDBC Criando uma classe de conexão (1) Continua...

Manipulando bancos de dados com o JDBC Criando uma classe de conexão (1)

Manipulando bancos de dados com o JDBC Criando uma classe de conexão (2)

Manipulando bancos de dados com o JDBC Objeto Connection con; Objetos Connection permitem aos programas criar instruções de SQL que acessem bancos de dados; Método static getConnection da classe DriveManager; O método getConnection aceita três argumentos: URL Usuário Senha

Manipulando bancos de dados com o JDBC URL “jdbc:postgresql://localhost:5432/alpoo_lpbd_2012_2” Protocolo de comunicação (jdbc) Subprotocolo de comunicação (postgresql) Localização do banco de dados (//localhost:5432/alpoo_lpbd_2012_2) Fábrica de conexões: controlar um processo repetitivo e trabalhoso, como abrir uma conexão com o banco de dados.

Manipulando bancos de dados com o JDBC Consultando um banco de dados Continua...

Manipulando bancos de dados com o JDBC Consultando um banco de dados Continua...

Manipulando bancos de dados com o JDBC Consultando um banco de dados Continua...

Manipulando bancos de dados com o JDBC Consultando um banco de dados Continua...

Manipulando bancos de dados com o JDBC Consultando um banco de dados Continua...

Manipulando bancos de dados com o JDBC Consultando um banco de dados

Manipulando bancos de dados com o JDBC Método Connection prepareStatement. Utilização de um objeto PreparedStatement para enviar instruções de SQL ao banco de dados. Método execute do objeto PreparedStatement para submeter uma consulta.

Manipulando bancos de dados com o JDBC Método executeQuery do objeto PreparedStatement retorna um objeto que implementa ResultSet. Um objeto ResultSet contém os dados da consulta. Métodos ResultSet permitem que o programa manipule o resultado da consulta.

PreparedStatements A interface PreparedStatements permite criar instruções SQL compiladas. PreparedStatements podem especificar parâmetros, o que os torna mais flexíveis do que Statements. Permitem realizar a mesma consulta repetidamente com diferentes valores de parâmetros.

PreparedStatements Exemplo: Os pontos de interrogação são espaços reservados para valores que serão passados como parte da consulta ao banco de dados.

PreparedStatements Especificar valores de parâmetro utilizando métodos set da interface PreparedStatement. Primeiro argumento: número do parâmetro configurado. Segundo argumento: valor do parâmetro.

PreparedStatements Má prática: Statement Um Statement simplesmente executa uma cláusula SQL no método execute. Um PreparedStatement é mais rápido e deixa seu código muito mais limpo.

DAO – Data Access Object Padrões de Projeto (Design Patterns) Alguns problemas aparecem com tanta frequência que as pessoas desenvolvem uma solução “padrão” para eles. Essa solução padrão tem o nome de Design Pattern (Padrão de Projeto). A nossa ConnectionFactory implementa o design pattern Factory que prega o encapsulamento da construção (fabricação) de objetos complexos.

DAO – Data Access Object Colocar código SQL nas classes de lógica da aplicação Deselegante Inviável para manter o código A ideia é remover o código de acesso ao banco de dados de suas classes de lógica e colocá-lo em uma classe responsável pelo acesso aos dados.

DAO – Data Access Object Considere a seguinte classe de conexão:

DAO – Data Access Object Considere a classe Contato a seguir:

DAO – Data Access Object Classe ContatoDAO: Continua...

DAO – Data Access Object Classe ContatoDAO:

DAO – Data Access Object Classe de teste:

DAO – Data Access Object Através de uma única classe seremos capazes de acessar o banco de dados. A ideia é isolar todo o acesso a banco em classes bem simples. Objetos dessas classes são responsáveis por acessar os dados (DAO – Data Access Object).

REFERÊNCIA DEITEL, H.M; Java Como Programar. Ed. Pearson, 8ª ed, 2010. Apostilas Caelum fj-21. Disponível em: http://www.caelum.com.br/