|
||
|
|
| Conheça o Plugfeed | » Início » Programação » Java » Conexão com banco de dados --> |
|
Avaliação:
![]() ![]() ![]() ![]() | Publicado em: 10/06/2007Conexão com banco de dados
Dayvid Lima Desenvolvedor Java há mais de 5 anos, atualmente consultor java em empresa multinacional utilizando recursos avançados da tecnologia J2EE com servidores de aplicação em plataforma Solaris para gerenciamento de redes e integração de sistemas.
Conexão com banco de dados
Agora vamos as explicações, para a classe de banco "Banco.java". As primeiras linhas fazem o import dos objetos de banco que iremos utilizar: import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.ResultSet; import java.sql.Statement; A seguir tenho as constantes com dados pré-definidos de login/senha, driver de banco e endereço do servidor de banco: // driver que será utilizado private String DRIVER = "com.mysql.jdbc.Driver"; // endereço do servidor e nome do banco // - localhost: endereço do servidor, nesse caso é um servidor local // - teste: nome da base de dados private String URL = "jdbc:mysql://localhost/teste"; // usuário e senha para conexão com o banco private String USERNAME = "usuario"; private String PASSWORD = "senha"; // objeto do tipo Connection que será utilizado para guardar a referência com o banco após abrir a conexão private Connection conn; O método construtor da nossa classe abre a conexão com o banco de dados: try { Class.forName(this.DRIVER); this.conn = DriverManager.getConnection(URL,USERNAME,PASSWORD); } catch (ClassNotFoundException e){ System.out.println("Não foi possivel encontrar o driver de banco: " + e.getMessage()); } catch(SQLException e){ System.out.println("Erro ao conectar com o banco: " + e.getMessage()); } O processo de execução de "querys" em um banco pode se resumir nos seguintes passos: 1 - criar conexão com o banco 2 - executar as "querys" (consultas) 3 - receber os valores retornados pelas consultas Nosso método construtor já está abrindo a conexão com o banco, então irei comentar agora os itens 2 e 3. 2 - executar as "querys" (consultas) Para executar as querys no banco devemos criar um objeto do tipo "Statement" ou "PrepareStatement", no nosso exemplo estamos utilizando o "Statement": ... Statement stmt = null; ResultSet rs = null; // query que será executada String sql = "SELECT cod_usuario, nome, email FROM usuario"; try { // executa a query e guarda o resultado no RecordSet rs stmt = this.conn.createStatement(); rs = stmt.executeQuery(sql); ... 3 - receber os valores retornados pelas consultas Para receber os dados retornados por uma query precisamos do "ResultSet": rs = stmt.executeQuery(sql); Através do resultSet podemos receber os dados de diversas formas, veja alguns exemplos: int x = rs.getInt("a"); String s = rs.getString("b"); float f = rs.getFloat("c"); Obs.: Note que sempre que utilizamos algo em um banco de dados, seja abrir uma conexão ou realizar uma consulta, devemos tratar as exceções que podem acontecer, por isso temos sempre o bloco "try" e "catch". O arquivo "UsaBanco.java", apenas garante que os dados serão informados corretamente pelo usuário e chama a classe de banco para realizar as consultas e/ou alterações. Para finalizar vamos aprender a compilar tudo isso, como o driver do banco está dentro de um arquivo .zip devemos colocar esse arquivo no path da máquina ou informar o seu endereco (incluindo o seu nome) através do comando -classpath no momento de execução do programa, caso contrário o java não irá encontrar o driver. Primeiro você deve salvar os códigos em dois arquivos, Banco.java e UsaBanco.java respectivamente, faça do download do arquivo mysqlDriver.zip e coloque no mesmo diretório dos arquivos .java que você salvou. Obs.: Não esqueça de alterar os dados de acesso ao banco na classe Banco.java, você deve colocar o endereço, o nome do banco e os dados de login e senha para acessar o mesmo. Compile os códigos com o seguinte comando: javac *.java Rode o programa com o seguinte comando: Para o comando "incluir", devemos informar também um nome e um email para que seja gravado no banco de dados, ex.: java -classpath ./mysqlDriver.zip:./ UsaBanco incluir Dayvid nome@servidor.com Para o comando "excluir", devemos informar também o código do usuário, ex.: java -classpath ./mysqlDriver.zip:./ UsaBanco excluir 1 Para o comando "listar", basta apenas informar o comando, ex.: java -classpath ./mysqlDriver.zip:./ UsaBanco listar Bom com isso finalizamos mais um artigo, espero que tenham gostado e que este seja uma boa referência para quando vocês forem criar os seus próprios programas com acesso a bancos de dados. Até o próximo. Dayvid Arquivos anexos ao artigo
Artigos relacionados
Marcelo
Meus parabéns, muito bom o artigo, gostei bastante.
Abraço. ![]() ![]() ![]() ![]() ![]() Oswaldo <oswaldo.net@uol.com.br>
O artigo está muito bom, mas infelizmente ele também revela o descuido que até mesmo desenvolvedores experientes têm em relação à segurança. A instrução String sql = "DELETE FROM usuario WHERE cod_usuario='"codUsuario"'" jamais deveria ser executada sem uma validação contra o SQL Injection.
![]() ![]() ![]() ![]() ![]() laercio <laercio_21@yahoo.com.br>
Valeu cara, muito bom seu artigo continue assim!
![]() ![]() ![]() ![]() ![]() Tiago Hillebrandt <tiago@centralsbs.com.br>
Show de bola ;)
Parabéns pelo artigo! Ficou muito susse. Se possível, solicito que nos próximos tutoriais insira os fontes junto em anexo, valeu! ![]() ![]() ![]() ![]() ![]() John
Muito bom!
Soh uma dúvia.... Esse MysqlDriver, onde eu coloco ele? ![]() ![]() ![]() ![]() ![]() Renata <renata.64@gmail.com>
Legal esse artigo! Me ajudou bastante...
![]() ![]() ![]() ![]() ![]() Romulo Trindade <romulo.trindade@gmail.com>
Muito bom artigo, ajudou bastante!!!!
![]() ![]() ![]() ![]() ![]() Maria Helena <leninhavieiralira@hotmail.com>
Gostei muito do artigo, me ajudou bastante...
Abraços!!! ![]() ![]() ![]() ![]() ![]() Alberto <alb_csw@hotmail.com>
Oi Dayvid,
li seu artigo e achei muito bom. Estou tentando fazer uma conexão com um banco de dados(SQL, MySQL...ou outro qualquer) para, obviamente, guardar informaçoes de meu programa. Entretando não consigo fazer esta conexão e muito menos gravar informações. Quando executo a main ele solta o 1° 'System.out' e depois eu escrevo, via console, mas não consigo interagir com o código. Se voce pudesse me ajudar agradeceria, Desde já agradeço a atençao Aguardo contato, Alberto ![]() ![]() ![]() ![]() ![]() romulo moreira <romulo_hawk2@hotmail.com>
Muito bom, me arrependi de não ter achedo esse site antes...
Parabéns ![]() ![]() ![]() ![]() ![]() Helga <Helgafety@hotmail.com>
oi Dayvid adorei esse artigo eu tirei engenharia Informática e agora estou a fazer o mcts(sql server 2005) sei n ser muito a sua área mas gostaria de poder contar com mais artigos seus p ajudar-me a entender melhor esta ferramenta bjao sucessos.
![]() ![]() ![]() ![]() ![]() Renato Moita <renatomoitinho@yahoo.com.br>
parabens amigo, é de muita ajuda esse codigo e bem explicado.
valeu !! ![]() ![]() ![]() ![]() ![]() Renato <renato.r6@hotmail.com>
Foi em C# gostaria de ver em vb
![]() ![]() ![]() ![]() ![]() Eliza <liz_bulnes@hotmail.com>
Excelente este artigo
![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
|
|