12
JDBC – API Pedro Henrique Grupo de Usuários Java de Barreiras/BA - BarreirasJUG

Introdução ao JDBC - BarreirasJUG

Embed Size (px)

DESCRIPTION

Apresentação utilizada na palestra de introdução ao JDBC com o objetivo de mostrar uma conexão simples com um banco de dados e envio de alguns comandos.

Citation preview

Page 1: Introdução ao JDBC - BarreirasJUG

JDBC – API

Pedro Henrique

Grupo de Usuários Java de Barreiras/BA - BarreirasJUG

Page 2: Introdução ao JDBC - BarreirasJUG

Java e Bancos de dados

Persistência Gravar dados em memórias não voláteis Uns 90% das aplicações precisam deste recurso Linguagens orientadas aos dados (Dbase, FoxBase,

Clipper, CA-Visual Objects. Persistir nem sempre quer dizer Bancos de Dados

Relacionais(Arquivos padrões, arquivos de texto, etc.)

É a única forma ? (Hibernate, ibates, Prevayler, etc.) Vantagens e desvantagens dos frameworks de

persistência. (SQL escrito vs SQL gerado) SQL ANSI – Programa independente de Banco, será

mesmo JDBC ?

Page 3: Introdução ao JDBC - BarreirasJUG

Introdução

Page 4: Introdução ao JDBC - BarreirasJUG

Como funciona ?

Conecte-se ao banco de dados Através da interface

Envie os comandos de pesquisa e atualização dos dados

Recupere os resultados da execução

Page 5: Introdução ao JDBC - BarreirasJUG

Exemplo

public void connectToAndQueryDatabase(String username, String password) {

Connection con = DriverManager.getConnection( "jdbc:myDriver:myDatabase", username, password); Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");

while (rs.next()) {

int x = rs.getInt("a");

String s = rs.getString("b");

float f = rs.getFloat("c");

}

}

Page 6: Introdução ao JDBC - BarreirasJUG

Driver / Implementação

JDBC / ODBC – Ponte para os drivers do sistema operacional Windows.

Nativo – Escritos e C e C++ Middleware Driver – Software

especializado Puramente Java – Classes que acessam o

banco no nível mais baixo.

Page 7: Introdução ao JDBC - BarreirasJUG

Explicação

ConnectionManager – Provê conexão de banco.

Statement – Envia comandos sql para a conexão.

ResultSet – Encapsula o resultado dos comandos enviados.

Page 8: Introdução ao JDBC - BarreirasJUG

Url de acesso, usuário e senha

jdbc:mysql://localhost:3306/banco_dados

Page 9: Introdução ao JDBC - BarreirasJUG

Outro exemplo

Page 10: Introdução ao JDBC - BarreirasJUG

Executando atualizações/inserçõesconn.prepareStatment()stmt.set...()stmt.executeUpdate()

Mas um comando de cada vez, consome tempo....

Page 11: Introdução ao JDBC - BarreirasJUG

Outro exemplo (batch)

Page 12: Introdução ao JDBC - BarreirasJUG

Perguntas

Pedro Henrique Skype: pedrohenrique_mauricea Twitter: @ibotirama E-mail: [email protected] blog.efacilsistemas.com.br