Introdução ao JDBC

13 respostas
A

Assunto: Como utilizar o java para fazer uma conexão com um banco de dados, detalhando como isto realmente acontece e qual é o papel do Driver.

Você pode ler este tutorial na íntegra http://www.guj.com.br/java.artigo.7.1.guj

Por favor, coloque as suas dúvidas e seus comentários sobre este tutorial aqui.
Sinta-se livre para fazer qualquer tipo de pergunta, desta maneira você estará nos ajudando e aos outros usuários!

13 Respostas

O

Gostei bastante do tutorial sobre JDBC. Nas “Considerações Finais” foi feita uma afirmação que me deixou ainda mais curioso sobre estas possibilidades do mundo Java. Separar as declarações SQL em um arquivo XML. Existe algum livro ou referência que aborde exatamente estes assuntos Java x JDBC x XML ?

Desde já,

Abraços a todos

Paulo_Silveira

Oi Oswaldo!

Bem, abordei esse topico porque a gente usa isso no site do GUJ: deixamos a configuracao e TODAS as sql queries em um arquivo texto. Alias, ele eh gigantesco, se voce quiser dar uma olhada:

http://cvs.arca.ime.usp.br/cgi-bin/viewcvs.cgi/guj/resource/WEB-INF/configfiles/MySQL.sql?rev=1.23&content-type=text/vnd.viewcvs-markup

Nao conheco nenhuma documentacao, mas vou fazer um tutorial.

O

Boa Tarde Paulo,

Em primeiro lugar quero agradecer pelo rápido retorno. Ótimo saber que Você já está preparando um novo tutorial a respeito deste assunto. Como já falei o estilo de Vocês é bastante claro e informativo.

Entendi que todas as queries estão dentro deste arquivo mas se Você não se importa ficaram ainda duas dúvidas:

1 - Se este é um arquivo texto por que no tutorial Você comentou que estas queries deveriam ficar em arquivo XML ?

2 - Como cada uma das queries é indexada (chamada) dentro deste arquivo a partir do java?

Estamos aguardando o seu novo tutorial…

Abraços
:smiley:

Paulo_Silveira

Entao, estou planejando um outro tutorial, que ja esta para sair, sobre connection pool!

faça o que eu falo, não faça o que eu faço! :slight_smile:
então, poderia ser um xml, mas um properties eh mais facil para uma aplciação pequena!

Ela é indexada através do java.util.Properties (http://www.guj.com.br/api/j2se.html?api=java.util,Properties). Essa classe tem um método que le esse tipo de arquivo, e já deixa em uma estrutura que basta você usar properties.getProperty(“nome.da.sql”), que ele te retorna a sql como string

que tipo de tutorial poderia ajduar voces sobre JDBC?

O

Paulo,

Obrigado pelo retorno.

Se o arquivo for XML será utilizada a java.utils também ?

Com relação aos tutoriais de JDBC o de connection pool parece muito importante. Vamos a ele então…

Abraços

passos

:roll:

Fiquei apaixonado com a possibilidade de poder isolar as querys num arquivo txt ou num xml (acho que no txt deve ser mais tranquilo) e gostaria de mais informações sobre o assunto. Se tiver alguns exemplos ficaria agradecido :slight_smile:

Rafael_Steil

O esquema das querys em um arquivo texto eh bastante simples. Por exemplo, crie um arquivo parecido com o mostrado abaixo:

cliente.selecionarTudo = SELECT * FROM tabela_clientes
cliente.selecionarPorId = SELECT * FROM tabela_clientes WHERE id_clientes = ?

note o “?”… eh a sintaxe para um PreparedStatement.

No seu codigo, carrege esse arquivo utilizando a classe Properties e use o metodo getProperty() para pegar a instrucao desejada. Depois eh so continuar normalmente com a aplicacao!!

Irado, nao?! :mrgreen:

[]'s
Rafael Steil

R

Naum consegui!

E ai pessoal, li a materia e achei bem lega, mas… nao consegui fazer funcionar. Da uma exceção de classe naum encontrada. Sendo q eu coloquei o caminho da drive na variavel CLASSPATH e ainda rodei assim:

java MinhaClasse -classpath c:…mysql-connector-java-3.0.10-stable-bin.jar

mas naum deu certo.

alguem pode me ajudar?! O q estou fazendo de errado?!

Rafael_Steil

Qual a exception que deu? ( qual a classe que ele acusa nao encontrar? )

Voce tem que rodar assim:

java -classpath .;c:\mysql-connector-java-3.0.10-stable-bin.jar MinhaClasse

note o “.;” … ele tmb precisa estar presente.

Rafael

S

Olá, Amigos.

Eu li o artigo sobre JDBC, pois era de meu interesse e já a algum tempo eu tinha a curiosidade de saber como funcionam os meios para conexao do Db no Java.

Agora aqui algumas duvidas que tive:

Aqui está o codigo

import java.sql.*;

public class Prog01 {

        private void Prog01() {
                try {
                Class.forName("com.mysql.jdbc.Driver");
                } catch (Exception ex) {
                        System.out.println(ex.getMessage());
                       }
try {         
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/mysql?user=root");
} catch (SQLException ex) {
        System.out.print(ex.getMessage());
}

         }

         public static void main(String arg[]) {
                Prog01 p = new Prog01();
                p.Prog01();
         }
}

ok.

Obrigado pela atenção.

tnaires

Olá pessoal, venho por este humilde post para perguntar o seguinte:
Li em algum lugar (acho q na documentação do java) q essa maneira d conexão (pelo DriverManager.getConnection(bla bla bla)) não é mais a melhor maneira d conexão.
Alguém podia me esclarescer isto, pq acho q peguei o trem andando…
Abraços

Rafael_Steil

Ha outros meios, mas depende das tuas necessidades…

Use o getConnection e seja feliz :wink:

Rafael

Andre_Heidi_Moriya

Olá pessoal do guj!

Sou novo em java, e atualmente estou criando um sistema para o meu estagio na faculdade.
o que quero saber é o seguinte: estou usando banco de dados Postgresql, consigo fazer as conexões tudo normal.
mas a minha duvida é: quando eu quiser instalar a minha app no computador de outra pessoa, eu vou precisar
instalar o banco tb ou existe uma maneira de carregar a pasta DATA, onde estão os dados do banco?? Existe uma
maneira igual ao Interbase e Firebird?? Onde eu configuro pelo ODBC??

Bem espero que tenha entendido a minha duvida

Obrigado e desde já agradeço a atenção de todos

André Moriya

Criado 29 de agosto de 2002
Ultima resposta 14 de fev. de 2009
Respostas 13
Participantes 9