SlideShare a Scribd company logo
1 of 29
Acesso a Base de Dados 
JDBC 
Trabalho Realizado por: 
Diogo Reis, 1010481
INTRODUÇÃO 
 JDBC (Java DataBase Conectivity) é uma API Java 
que fornece classes e interfaces para acesso e 
tratamento de dados. 
 Camada de abstracção que permite a um programa 
Java utilizar uma interface padrão para acesso a 
uma base de dados relacional através da linguagem 
SQL.
INTRODUÇÃO 
• A API JDBC cria como padrão: 
– O mecanismo de como deve ser feita a ligação à Base de Dados 
– Abordagem para criar consulta 
– Resultado da consulta 
• A API JDBC não cria como padrão: 
– Sintaxe SQL 
• API localizada no pacote java.sql
INTRODUÇÃO 
 JDBC consiste em duas partes: 
– API JDBC, puramente escrita em Java. 
– Gestor de Driver JDBC, o qual comunica com os 
drivers dos vendedores da BD.
JDBC DRIVERS 
 São o coração do JDBC. Há quatro tipos de 
drivers: 
– TIPO 1 – JDBC-ODBC 
– TIPO 2 – JDBC – JAVA PARTIAL DRIVER 
– TIPO 3 – PURE-JAVA JDBC DRIVER 
– TIPO 4 – PURE-JAVA JDBC DRIVER
TIPOS DE DRIVERS 
 TIPO 1 
– Utilizado para fazer a ligação (“ponte”) entre o 
JDBC e um driver ODBC. 
 TIPO 2 
– Converte chamadas JDBC em chamadas 
internas da API do cliente da base de dados.
 TIPO 3 
– A API do JDBC acede a uma aplicação 
intermediária (middleware) encarregada de 
traduzir chamadas JDBC e enviá-las à base de 
dados. 
 TIPO 4 
– Este driver converte as chamadas JDBC 
directamente para o protocolo nativo do SGBD.
ODBC 
 ODBC (Open Database Connectivity) é uma 
API construída em C para aceder a base de 
dados. 
 ODBC não é uma API independente de 
plataforma, sendo patrocinado pela 
Microsoft. 
 A API JDBC oferece um driver específico 
para o padrão ODBC.
VANTAGENS JDBC 
 Um programa Java utiliza uma API JDBC 
única que é independente da base de dados 
ou driver que estiver a utilizar. 
 Os drivers para conexão e acesso às 
principais base de dados existentes são 
fornecidos pelos seus fabricantes. 
 O programador só precisa de saber utilizar o 
driver adequado e a API JDBC.
PRINCIPAIS CLASSES E INTERFACES JDBC 
 DriverManager 
 Connection 
 Statement 
 PreparedStatement 
 CallableStatement 
 ResultSet 
 SQLException
DRIVERMANAGER 
 Utilizado para estabelecer uma conexão 
entre o driver apropriado e a Base de Dados. 
 Métodos 
public static Connection getConnection (String url) 
throws SQLException 
– Inicia uma conexão à base de dados e retorna um objecto 
Connection.
CONNECTION 
 Representa uma conexão com uma BD específica 
– comandos SQL são executados e os resultados são retornados 
– aspectos das transacções são tratados (commit,etc) 
– descrição da BD pode ser obtida (metadados) 
• Métodos 
 public Statement createStatement() throws SQLException 
– - Cria um objeto com uma instrução SQL para execução futura.
CONNECTION 
 Métodos 
– public void close() throws SQLException 
- Fecha a conexão actual. 
– public void commit() throws SQLException 
- Confirma a transacção. 
– public void rollback() throws SQLException 
- Cancela a transacção.
STATEMENT 
 Utilizado para enviar comandos SQL simples 
 • Métodos 
 public ResultSet executeQuery (String sql) throws 
SQLException 
- Executa a consulta SQL passada em SQL e retorna o 
ResultSet com o resultado da consulta. 
 public int executeQuery(String sql) throws SQLException 
- Executa a instrução INSERT, UPDATE ou DELETE 
especificada em SQL. 
 public void cancel() throws SQLException 
- Cancela uma instrução SQL que esteja a ser executada.
PREPAREDSTATEMENT 
 Utilizado para enviar comandos SQL que recebam um ou mais parâmetros como entrada 
 • Métodos 
 public ResultSet executeQuery (String sql) throws SQLException 
- Executa a consulta SQL passada em SQL e retorna o ResultSet com o resultado da 
consulta. 
 public int executeUpdate() throws SQLException 
– Usado para efectuar actualizações numa base de dados como a criação de tabelas 
(CREATE), alterações (UPDATE) ou exclusão (DELETE) de registros, etc. 
 public setInt(int indice, int valor) public setBoolean(int indice, boolean valor) 
– Usado para configurar os parâmetros dum código SQL.
CALLABLESTATEMENT 
 Utilizado para chamar stored procedures na 
Base de Dados. 
 • Métodos 
– public CallableStatement prepareCall (String 
storedProcedure) throws SQLException 
- Executa a stored procedured armazenada na Base de 
Dados.
SETE PASSOS BÁSICOS PARA USAR O JDBC 
1. Carregar o driver 
2. Definir a URL de Conexão 
3. Estabelecer a Conexão 
4. Criar um objecto Statement 
5. Executar a Consulta 
6. Processar os Resultados 
7. Fechar a Conexão
SETE PASSOS BÁSICOS PARA USAR O JDBC 
 1. Carregar o driver 
try {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver "); } 
catch(ClassNotFoundException e) {...} 
 2. Definir a URL de Conexão 
String odbcURL = "jdbc:odbc:Java"; 
 3. Estabelecer a conexão 
String user= “abc”; 
String password = “secret”; Connection 
connection=DriverManager.getConnection(odbcURL,user,password); 
 4. Criar um objecto Statement 
Statement statement =connection.createStatement(); 
 5. Executar a Consulta: 
String query = “SELECT col1, col2, col3 FROM sometable”; 
ResultSet resultSet = statement.executeQuery(query);
SETE PASSOS BÁSICOS PARA USAR O JDBC 
 6. Processar os Resultados 
while(resultSet.next()) 
{ System.out.println(resultSet.getString(1)+ “” + 
resultSet.getString(2)+ “” + resultSet.getString(3)); 
– A primeira coluna tem índice 1, não 0; 
 7. Fechar a Conexão 
connection.close(); 
– - Abrir e fechar conexão é um recurso que consome muito da 
máquina;
EXEMPLO
EXEMPLO 
 Passos para configurar ODBC no Windows: 
 Seleccionar Painel de Controlo – 
Ferramentas Administrativas 
 Seleccionar “Fonte de Dados – ODBC”
EXEMPLO 
 Criar um DNS através da fonte de dados 
ODBC 
 Adicionar - Microsoft Acess Driver – Concluir
EXEMPLO 
• Nome da ligação ODBC - JavaJdbc 
• Seleccionar BD - ...jdbc.mdb
APLICAÇÃO JAVA APLICAÇÃO JAVA - JDBC
APLICAÇÃO JAVA APLICAÇÃO JAVA - JDBC
APLICAÇÃO JAVA APLICAÇÃO JAVA - JDBC
APLICAÇÃO JAVA APLICAÇÃO JAVA - JDBC 
 Resultado
Conclusão 
 Esta apresentação serve principalmente para 
ficarmos com uma pequena ideia de qual a 
finalidade e meios de implementação de uma 
ligação a Base de Dados em Java através da JDBC. 
 De ter em atenção que nesta apresentação foram 
especificados, como devem imaginar, apenas alguns 
dos métodos e interfaces da JDBC.
Bibliografia e Links úteis 
 http://java.sun.com/products/jdbc/ 
 http://www.imasters.com.br/artigo.php?cn=1020&cc=89 
 http://jdbcmanager.sourceforge.net/ 
 http://www.mhavila.com.br/link/prog/java/java-api.html 
 http://www.inf.furb.br/~jomi/java/pdf/jdbc.pdf 
 http://java.sun.com/products/jdbc/learning.html 
 http://www.dimap.ufrn.br/~jorge/MySW/jdbc/threetier/Slides/index.htm

More Related Content

What's hot

Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Helder da Rocha
 
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)Helder da Rocha
 
API de segurança do Java EE 8
API de segurança do Java EE 8API de segurança do Java EE 8
API de segurança do Java EE 8Helder da Rocha
 
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-connectivityffeitosa
 
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Helder da Rocha
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Helder da Rocha
 
Acesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCAcesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCLuiz Ricardo Silva
 
Minicurso de Segurança em Java EE 7
Minicurso de Segurança em Java EE 7Minicurso de Segurança em Java EE 7
Minicurso de Segurança em Java EE 7Helder da Rocha
 
A arquitetura modular do Java 9
A arquitetura modular do Java 9A arquitetura modular do Java 9
A arquitetura modular do Java 9Helder da Rocha
 
Java database connectivity jdbc
Java database connectivity   jdbcJava database connectivity   jdbc
Java database connectivity jdbcDinarte Filho
 
Odi tutorial configuração repositórios mestre e trabalho
Odi tutorial   configuração repositórios mestre e trabalhoOdi tutorial   configuração repositórios mestre e trabalho
Odi tutorial configuração repositórios mestre e trabalhoCaio Lima
 
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 2012Frederico Maia Arantes
 
Odi tutorial glossário e termos técnicos
Odi tutorial   glossário e termos técnicosOdi tutorial   glossário e termos técnicos
Odi tutorial glossário e termos técnicosCaio Lima
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Eduardo Mendes
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPManoel Afonso
 
ODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaCaio Lima
 

What's hot (20)

Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)Curso de Java Persistence API (JPA) (Java EE 7)
Curso de Java Persistence API (JPA) (Java EE 7)
 
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
 
API de segurança do Java EE 8
API de segurança do Java EE 8API de segurança do Java EE 8
API de segurança do Java EE 8
 
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
 
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
Curso de Enterprise JavaBeans (EJB) (JavaEE 7)
 
Java 14
Java 14Java 14
Java 14
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
Acesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBCAcesso a Banco de Dados em Java usando JDBC
Acesso a Banco de Dados em Java usando JDBC
 
Minicurso de Segurança em Java EE 7
Minicurso de Segurança em Java EE 7Minicurso de Segurança em Java EE 7
Minicurso de Segurança em Java EE 7
 
A arquitetura modular do Java 9
A arquitetura modular do Java 9A arquitetura modular do Java 9
A arquitetura modular do Java 9
 
Java database connectivity jdbc
Java database connectivity   jdbcJava database connectivity   jdbc
Java database connectivity jdbc
 
Odi tutorial configuração repositórios mestre e trabalho
Odi tutorial   configuração repositórios mestre e trabalhoOdi tutorial   configuração repositórios mestre e trabalho
Odi tutorial configuração repositórios mestre e trabalho
 
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
 
Java 9, 10, 11
Java 9, 10, 11Java 9, 10, 11
Java 9, 10, 11
 
Odi tutorial glossário e termos técnicos
Odi tutorial   glossário e termos técnicosOdi tutorial   glossário e termos técnicos
Odi tutorial glossário e termos técnicos
 
Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1Java Web 3 - Servlets e JSP 1
Java Web 3 - Servlets e JSP 1
 
Introdução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSPIntrodução ao Desenvolvimento de aplicações WEB com JSP
Introdução ao Desenvolvimento de aplicações WEB com JSP
 
ODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração TopologiaODI Tutorial - Configuração Topologia
ODI Tutorial - Configuração Topologia
 
Curso de JSP
Curso de JSPCurso de JSP
Curso de JSP
 
jsp-intro
jsp-introjsp-intro
jsp-intro
 

Viewers also liked

Viewers also liked (20)

Microsoft access
Microsoft accessMicrosoft access
Microsoft access
 
Aula Modelo Relacional
Aula Modelo RelacionalAula Modelo Relacional
Aula Modelo Relacional
 
Introducao Base Dados I
Introducao Base Dados IIntroducao Base Dados I
Introducao Base Dados I
 
Base de dados tic 10º ano
Base de dados   tic 10º anoBase de dados   tic 10º ano
Base de dados tic 10º ano
 
Modelação de Dados
Modelação de DadosModelação de Dados
Modelação de Dados
 
Access diapositivos aula nº 1 e 2
Access diapositivos aula nº 1 e 2Access diapositivos aula nº 1 e 2
Access diapositivos aula nº 1 e 2
 
Access aula 1 - intodução e conhecendo
Access   aula 1 - intodução e conhecendoAccess   aula 1 - intodução e conhecendo
Access aula 1 - intodução e conhecendo
 
Apresentação de microsoft access 2007 luis aguiar
Apresentação de microsoft access 2007   luis aguiarApresentação de microsoft access 2007   luis aguiar
Apresentação de microsoft access 2007 luis aguiar
 
Apostila access 2010
Apostila access 2010Apostila access 2010
Apostila access 2010
 
Conceitos essenciais de bases de dados
Conceitos essenciais de bases de dadosConceitos essenciais de bases de dados
Conceitos essenciais de bases de dados
 
Introducao Base Dados Ii
Introducao Base Dados IiIntroducao Base Dados Ii
Introducao Base Dados Ii
 
Bases De Dados
Bases De DadosBases De Dados
Bases De Dados
 
Manual de microsoft office access 2010
Manual de microsoft office access 2010Manual de microsoft office access 2010
Manual de microsoft office access 2010
 
Ppt curso access 2010
Ppt curso access 2010Ppt curso access 2010
Ppt curso access 2010
 
Manual do Access-Denise Guimarães
Manual do Access-Denise GuimarãesManual do Access-Denise Guimarães
Manual do Access-Denise Guimarães
 
Aula 1 introdução a base de dados
Aula 1   introdução a base de dadosAula 1   introdução a base de dados
Aula 1 introdução a base de dados
 
SGBD
SGBDSGBD
SGBD
 
64805565 access-basico
64805565 access-basico64805565 access-basico
64805565 access-basico
 
Access 2007 basico
Access 2007 basicoAccess 2007 basico
Access 2007 basico
 
PROA-UA: Plataforma de Revistas em Open Access da UA
PROA-UA: Plataforma de Revistas em Open Access da UAPROA-UA: Plataforma de Revistas em Open Access da UA
PROA-UA: Plataforma de Revistas em Open Access da UA
 

Similar to Acesso a Base de Dados com JDBC

Similar to Acesso a Base de Dados com JDBC (20)

Fundamentos de JDBC
Fundamentos de JDBCFundamentos de JDBC
Fundamentos de JDBC
 
Jdbc e maria db
Jdbc e maria dbJdbc e maria db
Jdbc e maria db
 
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
 
Jdbc
JdbcJdbc
Jdbc
 
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
 
Java13
Java13Java13
Java13
 
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...
 
1 jdbc
1 jdbc1 jdbc
1 jdbc
 
1 jdbc
1 jdbc1 jdbc
1 jdbc
 
Aula1
Aula1Aula1
Aula1
 
Apostila: Curso de java III
Apostila: Curso de java IIIApostila: Curso de java III
Apostila: Curso de java III
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)
 
Java com banco my sql
Java com banco my sqlJava com banco my sql
Java com banco my sql
 
Bancos de dados e jdbc java para desenvolvimento web
Bancos de dados e jdbc   java para desenvolvimento webBancos de dados e jdbc   java para desenvolvimento web
Bancos de dados e jdbc java para desenvolvimento web
 
Introdução ao JDBC - BarreirasJUG
Introdução ao JDBC - BarreirasJUGIntrodução ao JDBC - BarreirasJUG
Introdução ao JDBC - BarreirasJUG
 
CURSO JAVA 01
CURSO JAVA 01CURSO JAVA 01
CURSO JAVA 01
 
Conceitos de Java Web
Conceitos de Java WebConceitos de Java Web
Conceitos de Java Web
 
Ado
AdoAdo
Ado
 
Programação para Web II: JavaServer Pages
Programação para Web II:  JavaServer PagesProgramação para Web II:  JavaServer Pages
Programação para Web II: JavaServer Pages
 
Aula 6 conexão bd
Aula 6 conexão bdAula 6 conexão bd
Aula 6 conexão bd
 

Recently uploaded

Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTailsonSantos1
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfLuizaAbaAba
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfRavenaSales1
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...HELENO FAVACHO
 

Recently uploaded (20)

Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 

Acesso a Base de Dados com JDBC

  • 1. Acesso a Base de Dados JDBC Trabalho Realizado por: Diogo Reis, 1010481
  • 2. INTRODUÇÃO  JDBC (Java DataBase Conectivity) é uma API Java que fornece classes e interfaces para acesso e tratamento de dados.  Camada de abstracção que permite a um programa Java utilizar uma interface padrão para acesso a uma base de dados relacional através da linguagem SQL.
  • 3. INTRODUÇÃO • A API JDBC cria como padrão: – O mecanismo de como deve ser feita a ligação à Base de Dados – Abordagem para criar consulta – Resultado da consulta • A API JDBC não cria como padrão: – Sintaxe SQL • API localizada no pacote java.sql
  • 4. INTRODUÇÃO  JDBC consiste em duas partes: – API JDBC, puramente escrita em Java. – Gestor de Driver JDBC, o qual comunica com os drivers dos vendedores da BD.
  • 5. JDBC DRIVERS  São o coração do JDBC. Há quatro tipos de drivers: – TIPO 1 – JDBC-ODBC – TIPO 2 – JDBC – JAVA PARTIAL DRIVER – TIPO 3 – PURE-JAVA JDBC DRIVER – TIPO 4 – PURE-JAVA JDBC DRIVER
  • 6. TIPOS DE DRIVERS  TIPO 1 – Utilizado para fazer a ligação (“ponte”) entre o JDBC e um driver ODBC.  TIPO 2 – Converte chamadas JDBC em chamadas internas da API do cliente da base de dados.
  • 7.  TIPO 3 – A API do JDBC acede a uma aplicação intermediária (middleware) encarregada de traduzir chamadas JDBC e enviá-las à base de dados.  TIPO 4 – Este driver converte as chamadas JDBC directamente para o protocolo nativo do SGBD.
  • 8. ODBC  ODBC (Open Database Connectivity) é uma API construída em C para aceder a base de dados.  ODBC não é uma API independente de plataforma, sendo patrocinado pela Microsoft.  A API JDBC oferece um driver específico para o padrão ODBC.
  • 9. VANTAGENS JDBC  Um programa Java utiliza uma API JDBC única que é independente da base de dados ou driver que estiver a utilizar.  Os drivers para conexão e acesso às principais base de dados existentes são fornecidos pelos seus fabricantes.  O programador só precisa de saber utilizar o driver adequado e a API JDBC.
  • 10. PRINCIPAIS CLASSES E INTERFACES JDBC  DriverManager  Connection  Statement  PreparedStatement  CallableStatement  ResultSet  SQLException
  • 11. DRIVERMANAGER  Utilizado para estabelecer uma conexão entre o driver apropriado e a Base de Dados.  Métodos public static Connection getConnection (String url) throws SQLException – Inicia uma conexão à base de dados e retorna um objecto Connection.
  • 12. CONNECTION  Representa uma conexão com uma BD específica – comandos SQL são executados e os resultados são retornados – aspectos das transacções são tratados (commit,etc) – descrição da BD pode ser obtida (metadados) • Métodos  public Statement createStatement() throws SQLException – - Cria um objeto com uma instrução SQL para execução futura.
  • 13. CONNECTION  Métodos – public void close() throws SQLException - Fecha a conexão actual. – public void commit() throws SQLException - Confirma a transacção. – public void rollback() throws SQLException - Cancela a transacção.
  • 14. STATEMENT  Utilizado para enviar comandos SQL simples  • Métodos  public ResultSet executeQuery (String sql) throws SQLException - Executa a consulta SQL passada em SQL e retorna o ResultSet com o resultado da consulta.  public int executeQuery(String sql) throws SQLException - Executa a instrução INSERT, UPDATE ou DELETE especificada em SQL.  public void cancel() throws SQLException - Cancela uma instrução SQL que esteja a ser executada.
  • 15. PREPAREDSTATEMENT  Utilizado para enviar comandos SQL que recebam um ou mais parâmetros como entrada  • Métodos  public ResultSet executeQuery (String sql) throws SQLException - Executa a consulta SQL passada em SQL e retorna o ResultSet com o resultado da consulta.  public int executeUpdate() throws SQLException – Usado para efectuar actualizações numa base de dados como a criação de tabelas (CREATE), alterações (UPDATE) ou exclusão (DELETE) de registros, etc.  public setInt(int indice, int valor) public setBoolean(int indice, boolean valor) – Usado para configurar os parâmetros dum código SQL.
  • 16. CALLABLESTATEMENT  Utilizado para chamar stored procedures na Base de Dados.  • Métodos – public CallableStatement prepareCall (String storedProcedure) throws SQLException - Executa a stored procedured armazenada na Base de Dados.
  • 17. SETE PASSOS BÁSICOS PARA USAR O JDBC 1. Carregar o driver 2. Definir a URL de Conexão 3. Estabelecer a Conexão 4. Criar um objecto Statement 5. Executar a Consulta 6. Processar os Resultados 7. Fechar a Conexão
  • 18. SETE PASSOS BÁSICOS PARA USAR O JDBC  1. Carregar o driver try {Class.forName("sun.jdbc.odbc.JdbcOdbcDriver "); } catch(ClassNotFoundException e) {...}  2. Definir a URL de Conexão String odbcURL = "jdbc:odbc:Java";  3. Estabelecer a conexão String user= “abc”; String password = “secret”; Connection connection=DriverManager.getConnection(odbcURL,user,password);  4. Criar um objecto Statement Statement statement =connection.createStatement();  5. Executar a Consulta: String query = “SELECT col1, col2, col3 FROM sometable”; ResultSet resultSet = statement.executeQuery(query);
  • 19. SETE PASSOS BÁSICOS PARA USAR O JDBC  6. Processar os Resultados while(resultSet.next()) { System.out.println(resultSet.getString(1)+ “” + resultSet.getString(2)+ “” + resultSet.getString(3)); – A primeira coluna tem índice 1, não 0;  7. Fechar a Conexão connection.close(); – - Abrir e fechar conexão é um recurso que consome muito da máquina;
  • 21. EXEMPLO  Passos para configurar ODBC no Windows:  Seleccionar Painel de Controlo – Ferramentas Administrativas  Seleccionar “Fonte de Dados – ODBC”
  • 22. EXEMPLO  Criar um DNS através da fonte de dados ODBC  Adicionar - Microsoft Acess Driver – Concluir
  • 23. EXEMPLO • Nome da ligação ODBC - JavaJdbc • Seleccionar BD - ...jdbc.mdb
  • 27. APLICAÇÃO JAVA APLICAÇÃO JAVA - JDBC  Resultado
  • 28. Conclusão  Esta apresentação serve principalmente para ficarmos com uma pequena ideia de qual a finalidade e meios de implementação de uma ligação a Base de Dados em Java através da JDBC.  De ter em atenção que nesta apresentação foram especificados, como devem imaginar, apenas alguns dos métodos e interfaces da JDBC.
  • 29. Bibliografia e Links úteis  http://java.sun.com/products/jdbc/  http://www.imasters.com.br/artigo.php?cn=1020&cc=89  http://jdbcmanager.sourceforge.net/  http://www.mhavila.com.br/link/prog/java/java-api.html  http://www.inf.furb.br/~jomi/java/pdf/jdbc.pdf  http://java.sun.com/products/jdbc/learning.html  http://www.dimap.ufrn.br/~jorge/MySW/jdbc/threetier/Slides/index.htm