SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
Programação II - Prof. Fernando dos Santos




                     Java DataBase Connectivity (JDBC)


                                                Fernando dos Santos
                                             fernando.santos@udesc.br
Programação II - Prof. Fernando dos Santos




   Java DataBase Connectivity (JDBC)
   • JDBC é uma API Java para acesso à banco de dados.
   • O JDBC define um conjunto de classes e métodos para
     estabelecer conexão com um banco e executar comandos SQL.
   • Cada fabricante (Oracle, MySQL, etc) fornece uma
     implementação específica para uso com o banco – Driver JDBC.

  Aplicação A                      Aplicação B    JDBC API

                                                                Java
                         JDBC                    JDBC Driver
                                                  Manager



                Oracle            MySQL          JDBC Driver   Fabricante
Programação II - Prof. Fernando dos Santos




   JDBC Driver
   • É a implementação da JDBC API, disponibilizada pelo fabricante
     do banco de dados, para conectar no banco e executar SQL.
   • É disponibilizado em um arquivo jar, que deve ser incluido como
     uma biblioteca na aplicação.
   • O driver específico do banco é carregado na aplicação, para
     depois ser utilizado.
   • Comando para carregamento do driver:           JDBC API
          – Class.forName(“classe do driver”)
   • Carregamento do driver MySQL
                                                     JDBC Driver
          – Class.forName(“com.mysql.jdbc.Driver”)
                                                      Manager



                                                     JDBC Driver
                                                                   3
Programação II - Prof. Fernando dos Santos




   JDBC Driver Manager                                           JDBC API

   • É a classe Java que estabelece
     conexão com o banco de dados                               JDBC Driver
          – java.sql.DriverManager                               Manager
          – java.sql.Connection


   • Estabelecendo conexão:                                     JDBC Driver


   Connection conexao = DriverManager.getConnection(url, usuario, senha);

   • usuario: usuário de acesso ao banco
   • senha: senha de acesso ao banco
   • url: identifica o protocolo, banco, host do servidor, porta e esquema.
                 • jdbc:mysql://localhost:3306/sistema_vendas

                                                                              4
Programação II - Prof. Fernando dos Santos




   JDBC API

                                              JDBC API



                                             JDBC Driver
                                              Manager



                                             JDBC Driver

   • Disponibiliza classes para interação com o banco:
          – envio de comandos SQL: Statement e PreparedStatement
          – obtenção de resultados: ResultSet
   • Todas as classes estão no pacote java.sql

                                                                   5
Programação II - Prof. Fernando dos Santos




   JDBC API - Exemplo


   Class.forName("com.mysql.jdbc.Driver");

   Connection conexao =
   DriverManager.getConnection( "jdbc:mysql://localhost:3306/sistema_vendas", "root", "root123");

   Statement comando = conexao.createStatement();

   ResultSet resultados = comando.executeQuery(“select id, nome, senha from usuario”);

   while (resultados.next()) {
     int id = resultados.getInt(“id”);
     String nome = resultados.getString(“nome”);
     String senha = resultados.getString(“senha”);
   }
   comando.close();
   conexao.close();


                                                                                            6
Programação II - Prof. Fernando dos Santos




   JDBC e o paradigma orientado a objetos
   • As aplicações são desenvolvidas usando orientação a objetos
          – são modeladas classes e seus relacionamentos.
   • Como mapear classes para tabelas, e os atributos para colunas?

                           Usuario

           -     id: int
           -     nome: String
           -     senha: String

           +     métodos get() / set()

   • Escreva um método Java para buscar uma lista de usuários.
          – O método deve usar JDBC para fazer um select no banco;
          – Para cada registro, deve criar um objeto Usuário;
          – Retornar a lista de objetos Usuário
                                                                     7
Programação II - Prof. Fernando dos Santos




   Bibliografia
   • DEITEL, Paul J; DEITEL, Harvey M. Java: como programar.8. ed.
     São Paulo: Pearson, 2010. xxix, 1144 p, il.
          – Capítulo 28


   • JDBC Overview
          – http://www.oracle.com/technetwork/java/overview-141217.html




                                                                          8

Más contenido relacionado

La actualidad más candente (10)

Persistência com JPA usando o NetBeans 7
Persistência com JPA usando o NetBeans 7Persistência com JPA usando o NetBeans 7
Persistência com JPA usando o NetBeans 7
 
MySQL + Java - Manuel Contreras
MySQL + Java - Manuel ContrerasMySQL + Java - Manuel Contreras
MySQL + Java - Manuel Contreras
 
Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e maven
 
Técnicas de Programação para a Web
Técnicas de Programação para a WebTécnicas de Programação para a Web
Técnicas de Programação para a Web
 
Apresentação JSF
Apresentação JSFApresentação JSF
Apresentação JSF
 
Mini curso hibernate com anotações
Mini curso hibernate com anotaçõesMini curso hibernate com anotações
Mini curso hibernate com anotações
 
JPA com Hibernate
JPA com HibernateJPA com Hibernate
JPA com Hibernate
 
ObjectDB
ObjectDBObjectDB
ObjectDB
 
Introdução a jsf
Introdução a jsfIntrodução a jsf
Introdução a jsf
 
Introdução a JPA e Hibernate - TDC 2012
Introdução a JPA e Hibernate - TDC 2012Introdução a JPA e Hibernate - TDC 2012
Introdução a JPA e Hibernate - TDC 2012
 

Destacado

Rafael apresentação encontro csjt final
Rafael apresentação encontro csjt finalRafael apresentação encontro csjt final
Rafael apresentação encontro csjt final
leonardo2710
 
Ai que saudade da caderneta...”
Ai que saudade da caderneta...”Ai que saudade da caderneta...”
Ai que saudade da caderneta...”
Rainara Diniz
 
Ministro weder de oliveira
Ministro weder de oliveiraMinistro weder de oliveira
Ministro weder de oliveira
leonardo2710
 
TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...
TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...
TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...
Grepafenove
 
P7 Case Brasília Gourmet 2011
P7 Case Brasília Gourmet 2011P7 Case Brasília Gourmet 2011
P7 Case Brasília Gourmet 2011
P7 promo
 
Bikini25
Bikini25Bikini25
Bikini25
rusgirl
 
Cr2 apresentacao - 3 t10-port
Cr2   apresentacao - 3 t10-portCr2   apresentacao - 3 t10-port
Cr2 apresentacao - 3 t10-port
SiteriCR2
 
Quem sou deixa marca
Quem sou deixa marcaQuem sou deixa marca
Quem sou deixa marca
diacmiguel
 
Powerpoint melhorar a química gabriela reis sem fotografias
Powerpoint melhorar a química gabriela reis sem fotografiasPowerpoint melhorar a química gabriela reis sem fotografias
Powerpoint melhorar a química gabriela reis sem fotografias
Projetociencia
 
Os falhados do costume
Os falhados do costumeOs falhados do costume
Os falhados do costume
Tiago Lopes
 

Destacado (20)

Seminário MGME Ciências - ITAPEVA
Seminário MGME Ciências - ITAPEVASeminário MGME Ciências - ITAPEVA
Seminário MGME Ciências - ITAPEVA
 
Rafael apresentação encontro csjt final
Rafael apresentação encontro csjt finalRafael apresentação encontro csjt final
Rafael apresentação encontro csjt final
 
Ai que saudade da caderneta...”
Ai que saudade da caderneta...”Ai que saudade da caderneta...”
Ai que saudade da caderneta...”
 
Tutorial kmxalimentos
Tutorial kmxalimentosTutorial kmxalimentos
Tutorial kmxalimentos
 
Catálogo 201209
Catálogo 201209Catálogo 201209
Catálogo 201209
 
Ministro weder de oliveira
Ministro weder de oliveiraMinistro weder de oliveira
Ministro weder de oliveira
 
41.julho 2012 revista
41.julho 2012 revista41.julho 2012 revista
41.julho 2012 revista
 
TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...
TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...
TC6M. POSSÍVEIS PARÂMETROS PARA ELABORAÇÃO DE UM PROGRAMA DE CAMINHADA PARA I...
 
P7 Case Brasília Gourmet 2011
P7 Case Brasília Gourmet 2011P7 Case Brasília Gourmet 2011
P7 Case Brasília Gourmet 2011
 
Diseminare curs Comenius-One week course for teachers of science- Making scie...
Diseminare curs Comenius-One week course for teachers of science- Making scie...Diseminare curs Comenius-One week course for teachers of science- Making scie...
Diseminare curs Comenius-One week course for teachers of science- Making scie...
 
Bikini25
Bikini25Bikini25
Bikini25
 
Seminário MGME Ciências - DIADEMA
Seminário MGME Ciências - DIADEMASeminário MGME Ciências - DIADEMA
Seminário MGME Ciências - DIADEMA
 
Cr2 apresentacao - 3 t10-port
Cr2   apresentacao - 3 t10-portCr2   apresentacao - 3 t10-port
Cr2 apresentacao - 3 t10-port
 
Palestra Montes Claros
Palestra Montes ClarosPalestra Montes Claros
Palestra Montes Claros
 
Quem sou deixa marca
Quem sou deixa marcaQuem sou deixa marca
Quem sou deixa marca
 
PresentacióN1
PresentacióN1PresentacióN1
PresentacióN1
 
Matemática
MatemáticaMatemática
Matemática
 
Seminário MGME CIÊNCIAS - JAU
Seminário MGME CIÊNCIAS - JAUSeminário MGME CIÊNCIAS - JAU
Seminário MGME CIÊNCIAS - JAU
 
Powerpoint melhorar a química gabriela reis sem fotografias
Powerpoint melhorar a química gabriela reis sem fotografiasPowerpoint melhorar a química gabriela reis sem fotografias
Powerpoint melhorar a química gabriela reis sem fotografias
 
Os falhados do costume
Os falhados do costumeOs falhados do costume
Os falhados do costume
 

Similar a 1 jdbc

Aula 6 conexão bd
Aula 6 conexão bdAula 6 conexão bd
Aula 6 conexão bd
Danilo Alves
 
Silo.tips aula 4-jdbc-java-database-connectivity
Silo.tips aula 4-jdbc-java-database-connectivitySilo.tips aula 4-jdbc-java-database-connectivity
Silo.tips aula 4-jdbc-java-database-connectivity
ffeitosa
 
1102 banco-de-dados-com-java-jdbc
1102 banco-de-dados-com-java-jdbc1102 banco-de-dados-com-java-jdbc
1102 banco-de-dados-com-java-jdbc
Jamille Madureira
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
Nécio de Lima Veras
 

Similar a 1 jdbc (20)

Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)
 
Introdução à programação para web com Java - Módulo 01: Conexão com bamco de...
Introdução à programação para web com Java -  Módulo 01: Conexão com bamco de...Introdução à programação para web com Java -  Módulo 01: Conexão com bamco de...
Introdução à programação para web com Java - Módulo 01: Conexão com bamco de...
 
Trabalho teorico de Linguagem de Programação
Trabalho teorico de Linguagem de ProgramaçãoTrabalho teorico de Linguagem de Programação
Trabalho teorico de Linguagem de Programação
 
Aula 6 conexão bd
Aula 6 conexão bdAula 6 conexão bd
Aula 6 conexão bd
 
POO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de DadosPOO - 21 - Java e Banco de Dados
POO - 21 - Java e Banco de Dados
 
Jdbc e maria db
Jdbc e maria dbJdbc e maria db
Jdbc e maria db
 
Silo.tips aula 4-jdbc-java-database-connectivity
Silo.tips aula 4-jdbc-java-database-connectivitySilo.tips aula 4-jdbc-java-database-connectivity
Silo.tips aula 4-jdbc-java-database-connectivity
 
Conectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcConectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbc
 
Framework web 01 - Aula UTFPR 2018
Framework web 01 - Aula UTFPR 2018Framework web 01 - Aula UTFPR 2018
Framework web 01 - Aula UTFPR 2018
 
1102 banco-de-dados-com-java-jdbc
1102 banco-de-dados-com-java-jdbc1102 banco-de-dados-com-java-jdbc
1102 banco-de-dados-com-java-jdbc
 
Java 16 Jdbc
Java 16 JdbcJava 16 Jdbc
Java 16 Jdbc
 
Certificacoes java
Certificacoes javaCertificacoes java
Certificacoes java
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em Java
 
001 cesep - turma java
001   cesep - turma java001   cesep - turma java
001 cesep - turma java
 
Processos iniciais do mapeamento OR
Processos iniciais do mapeamento ORProcessos iniciais do mapeamento OR
Processos iniciais do mapeamento OR
 
Apresentação palestra ireport
Apresentação palestra ireportApresentação palestra ireport
Apresentação palestra ireport
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
GlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEGlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EE
 
PDO: TRABALHANDO COM BANCO DO JEITO CERTO
PDO: TRABALHANDO COM BANCO DO JEITO CERTOPDO: TRABALHANDO COM BANCO DO JEITO CERTO
PDO: TRABALHANDO COM BANCO DO JEITO CERTO
 
Fundamentos de JDBC
Fundamentos de JDBCFundamentos de JDBC
Fundamentos de JDBC
 

Más de Lukinha92

5 jpa-heranca
5 jpa-heranca5 jpa-heranca
5 jpa-heranca
Lukinha92
 
4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many
Lukinha92
 
4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one
Lukinha92
 
4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one
Lukinha92
 
3 jpa-consultas
3 jpa-consultas3 jpa-consultas
3 jpa-consultas
Lukinha92
 
2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples
Lukinha92
 
5 jpa-heranca
5 jpa-heranca5 jpa-heranca
5 jpa-heranca
Lukinha92
 
4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many
Lukinha92
 
4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one
Lukinha92
 
3 jpa-consultas
3 jpa-consultas3 jpa-consultas
3 jpa-consultas
Lukinha92
 
2 2-unidade-persistencia
2 2-unidade-persistencia2 2-unidade-persistencia
2 2-unidade-persistencia
Lukinha92
 
2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples
Lukinha92
 

Más de Lukinha92 (13)

5 jpa-heranca
5 jpa-heranca5 jpa-heranca
5 jpa-heranca
 
4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many
 
4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one
 
4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one
 
3 jpa-consultas
3 jpa-consultas3 jpa-consultas
3 jpa-consultas
 
2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples
 
5 jpa-heranca
5 jpa-heranca5 jpa-heranca
5 jpa-heranca
 
4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many4 2-jpa-relacionamentos-one-to-many
4 2-jpa-relacionamentos-one-to-many
 
4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one4 1-jpa-relacionamentos-many-to-one
4 1-jpa-relacionamentos-many-to-one
 
3 jpa-consultas
3 jpa-consultas3 jpa-consultas
3 jpa-consultas
 
2 2-unidade-persistencia
2 2-unidade-persistencia2 2-unidade-persistencia
2 2-unidade-persistencia
 
2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples2 1-jpa-mapeamento-simples
2 1-jpa-mapeamento-simples
 
1 jdbc
1 jdbc1 jdbc
1 jdbc
 

1 jdbc

  • 1. Programação II - Prof. Fernando dos Santos Java DataBase Connectivity (JDBC) Fernando dos Santos fernando.santos@udesc.br
  • 2. Programação II - Prof. Fernando dos Santos Java DataBase Connectivity (JDBC) • JDBC é uma API Java para acesso à banco de dados. • O JDBC define um conjunto de classes e métodos para estabelecer conexão com um banco e executar comandos SQL. • Cada fabricante (Oracle, MySQL, etc) fornece uma implementação específica para uso com o banco – Driver JDBC. Aplicação A Aplicação B JDBC API Java JDBC JDBC Driver Manager Oracle MySQL JDBC Driver Fabricante
  • 3. Programação II - Prof. Fernando dos Santos JDBC Driver • É a implementação da JDBC API, disponibilizada pelo fabricante do banco de dados, para conectar no banco e executar SQL. • É disponibilizado em um arquivo jar, que deve ser incluido como uma biblioteca na aplicação. • O driver específico do banco é carregado na aplicação, para depois ser utilizado. • Comando para carregamento do driver: JDBC API – Class.forName(“classe do driver”) • Carregamento do driver MySQL JDBC Driver – Class.forName(“com.mysql.jdbc.Driver”) Manager JDBC Driver 3
  • 4. Programação II - Prof. Fernando dos Santos JDBC Driver Manager JDBC API • É a classe Java que estabelece conexão com o banco de dados JDBC Driver – java.sql.DriverManager Manager – java.sql.Connection • Estabelecendo conexão: JDBC Driver Connection conexao = DriverManager.getConnection(url, usuario, senha); • usuario: usuário de acesso ao banco • senha: senha de acesso ao banco • url: identifica o protocolo, banco, host do servidor, porta e esquema. • jdbc:mysql://localhost:3306/sistema_vendas 4
  • 5. Programação II - Prof. Fernando dos Santos JDBC API JDBC API JDBC Driver Manager JDBC Driver • Disponibiliza classes para interação com o banco: – envio de comandos SQL: Statement e PreparedStatement – obtenção de resultados: ResultSet • Todas as classes estão no pacote java.sql 5
  • 6. Programação II - Prof. Fernando dos Santos JDBC API - Exemplo Class.forName("com.mysql.jdbc.Driver"); Connection conexao = DriverManager.getConnection( "jdbc:mysql://localhost:3306/sistema_vendas", "root", "root123"); Statement comando = conexao.createStatement(); ResultSet resultados = comando.executeQuery(“select id, nome, senha from usuario”); while (resultados.next()) { int id = resultados.getInt(“id”); String nome = resultados.getString(“nome”); String senha = resultados.getString(“senha”); } comando.close(); conexao.close(); 6
  • 7. Programação II - Prof. Fernando dos Santos JDBC e o paradigma orientado a objetos • As aplicações são desenvolvidas usando orientação a objetos – são modeladas classes e seus relacionamentos. • Como mapear classes para tabelas, e os atributos para colunas? Usuario - id: int - nome: String - senha: String + métodos get() / set() • Escreva um método Java para buscar uma lista de usuários. – O método deve usar JDBC para fazer um select no banco; – Para cada registro, deve criar um objeto Usuário; – Retornar a lista de objetos Usuário 7
  • 8. Programação II - Prof. Fernando dos Santos Bibliografia • DEITEL, Paul J; DEITEL, Harvey M. Java: como programar.8. ed. São Paulo: Pearson, 2010. xxix, 1144 p, il. – Capítulo 28 • JDBC Overview – http://www.oracle.com/technetwork/java/overview-141217.html 8