Escolar Documentos
Profissional Documentos
Cultura Documentos
Ajalmar Rocha
Fortaleza - Cear
novembro de 2007
i
1.1 Introduo
Assim, diante do exposto, falar sobre acesso a banco de dados em Java, quer dizer:
criar uma aplicao em Java que conecte a um SGBD que esteja manipulando um banco de
dados o qual possui uma ou mais tabelas de interesse a qual desejamos realizar operaes
de insero, alterao, exluso e busca.
Para alterar um registro ou masi registros em uma tabela podemos usar o seguinte
comando:
esse comando altera a(s) linha(s) j existente(s) na tabela "clientes"para os quais o campo
nome possui como valor "ajalmar". Assim, uma ou mais linhas podem ser alteradas na
tabela. Observao: sem a clusula WHERE do comando UPDATE todas as linhas da
tabela teriam aos seus campos fone atribudos o valor '8888-8888', logo a clusula WHERE
permiti-nos ltrar quais as linhas na tabela que devem ser alteradas.
esse comando retira a(s) linha(s) j existente(s) na tabela "clientes"para os quais o campo
nome possui como valor "ajalmar". Assim, uma ou mais linhas podem ser excludas na
tabela. Observao: sem a clusula WHERE do comando DELETE todas as linhas da
tabela seriam excludas, logo a clusula WHERE permiti-nos selecionar quais as linhas
na tabela que devem ser excludas.
NOME VARCHAR(50),
FONE VARCHAR(15),
PRIMARY KEY(ID)
De posse desse gupo de conceitos podemos agora conhecer como realizar acesso a
banco de dados usando a linguagem Java.
1.2 Acesso a Banco de Dados iv
O acesso a banco de dados, como j mencioando, requer primeiro que se crie uma
conexo com o SGBD, pois como qualquer aplicao baseada na arquitetura cliente-sevidor
uma conexo deve ser estabelecia. O cdigo para realizao de tal conexo dado a seguir:
Class.forName("com.mysql.jdbc.Driver");
Sobre o cdigo acima algumas consideraes podem ser feitas. Na varivel url temos
a informaes necessrias para a conexo com o SGBD. O trecho 'jdbc:mysql' informa a
utilizao do driver o MySql, ou seja, um arquivo .JAR (semelhante a um arquivo com-
pactado .ZIP ) que contm um grupo de classes java compiladas e as quais implementam
o drive especco para a conexo com o SGBD. Esse arquivo pode ser baixado dire-
1.2 Acesso a Banco de Dados v
ResultSet rs = stm.executeQuery(sql);
while (rs.next()) {
O comando de repetio 'while' vai fazer com que cada registro a partir do primeiro
seja acessado at se chegar a ltima linha quando 'rs.next()' retorna 'false'.
stm.close();
1.2 Acesso a Banco de Dados vi
conn.close();
import java.sql.*;
Class.forName("com.mysql.jdbc.Driver");
ResultSet rs = stm.executeQuery(sql);
while (rs.next()) {
stm.close();
conn.close();
<%@page import="java.sql.*"%>
<html>
<head>
</head>
<body>
<%
Class.forName("com.mysql.jdbc.Driver");
ResultSet rs = stm.executeQuery(sql);
while (rs.next()) {
%>
<%
stm.close();
conn.close();
%>
1.2 Acesso a Banco de Dados viii
</body>
</html>
1.2.3 Observao
Aqui utilizamos cdigo SQL dentro das classes Java ou arquivos JSP, isto um pssimo
hbito. O interessante ter as queries (comandos de consulta, insero, alterao e
excluso) dentre de objetos conhecidos como DAO (e at mesmo com os cdigos SQL em
arquivos de congurao, como um XML ou um arquivo de properties). Desta maneira,
caso voc mude de banco de dados, pode facilmente mudar nos DAOs as queries que no
so compatveis. Assim, uma forma mais eciente com o uso de DAOs estar disponvel
em material para as prximas aulas.