Duvida JDBC

Pessoal, alguem sabe onde eu axo um exemplo de um metodo JDBC que faça uma busca no banco atraves de um parametro string.

Ex. Eu quero dar um nome, e retornar todos os registros que contem aquele nome num determinado campo,

Eu tenho aqui a apostila da Caelum FJ 21 estudei nela mas… num consegui axar isso nela naum…

a Query q eu quero retornar eh a seguinte

Select * from pessoa where nome like ‘%JOAO%’;

Boa noite, fera…
É simples…
Já fez a classe de conexão?
Se já então é só implementar os métodos específicos, como por exemplo:

// Selecionar todos os clientes que contenham JOAO em seu nome... private void selecionarCliente() { // abre a conexão... conexao.conectar(); try { Statement stmt = conexao.con.createStatement(); ResultSet rs = stmt.executeQuery( "Select * from Clientes where Nome_Cli like '%JOAO%' order by Nome_Cli"); while (rs.next()) { // mostra o resultado como quiser... Nesse caso todos os nomes de clientes selecionados aparecerão num jComboBox... comboCliente.addItem(rs.getString("Nome_Cli")); } rs.close(); stmt.close(); } catch(SQLException e) { // informa os erros caso ocorram e.printStackTrace(); } // fecha a conexão conexao.desconectar(); }
Espero que te ajude em algo…
Um abraço!

Ah…
Caso não tenha uma classe de conexão e não saiba como fazer uma deixo um presentinho para você como exemplo para aprender…
Classe de conexão com o banco de dados…

[code]package com.linkelmed;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import javax.swing.JOptionPane;

/**
*

  • @author lindoelio
    */
    public class Conexao {

    public Connection con;
    private Statement stmt;
    private ResultSet rs;

    public void conectar() {
    try {
    // conexão com o PostgreSQL…
    Class.forName(“org.postgresql.Driver”);
    con = DriverManager.getConnection("jdbc:postgresql://127.0.0.1:5432/banco_dados,“usuario”,“senha”);

         // conexão com o MySQL...
         Class.forName("com.mysql.jdbc.Driver");
         con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/banco_dados,"usuario","senha");
     }
     catch (Exception e) {
         e.printStackTrace();
         JOptionPane.showMessageDialog(null,"Conexão recusada!\n" +
                                                               "Contacte o administrador do sistema.");
         System.exit(0);
     }
    

    }

    public void desconectar() {
    try {
    if (con != null) {
    con.close();
    }
    }
    catch (Exception e) {
    e.printStackTrace();
    }
    }
    }[/code]
    Serve?
    Um abraço!

cara…
blz
eu vi la… mas, nesse seu metodo de selecionaclientes, naum esta entrado nenhum parametro, como eu vou saber qual eh o parametro que eu estou passando?

Boa tarde…
Fera o parâmetro você escolhe… Nesse caso é onde o nome do cliente contenha a palavra JOAO…
Se você quiser colocar o conteúdo digitado num campo de pesquisa, por exemplo, é só implementar o método getText() do jEditText…
Tipo assim…

// Selecionar todos os clientes que contenham os caracteres digitados no jEditPesquisa em seu nome... private void selecionarCliente() { // abre a conexão... conexao.conectar(); try { Statement stmt = conexao.con.createStatement(); ResultSet rs = stmt.executeQuery( "Select * from Clientes where Nome_Cli like '%"+jEditPesquisa.getText()+"%' order by Nome_Cli"); while (rs.next()) { // mostra o resultado como quiser... comboCliente.addItem(rs.getString("Nome_Cli")); } rs.close(); stmt.close(); } catch(SQLException e) { // informa os erros caso ocorram e.printStackTrace(); } // fecha a conexão conexao.desconectar();
Vai funcionar…
Um abraço!

obrigado cara…
vlw era isso mesmo q eu tava querendo
vlw mesmo

Fico feliz em ter ajudado.
T+