Comparar JTextField com Banco

5 respostas
psyhclo

Ola estou querendo digitar um nome no campo nome_cli e pegar no banco os dados com esse nome, queria saber como comparar o sql com o JTextField:

Nao sei se ta certo desse jeito, mas nessa linha String Busca = nome_cli.getText(); ele da um erro falando pra criar metodo getText(). sera q podem me ajudar? E se estiver errado esta forma q to fazendo, me corrijam. Vlw

public class AgendaDAO {
    
    private ArrayList cli;
    private Connection con;  
    private static ArrayList<ClientePOJO> clienteArrayList;
    private Agenda nome_cli;
    public AgendaDAO(){
    
    }
    
    
    public Object[] busca_cli(){
		Vector<String> nomeString = new Vector<String>();
		String[] nomes;
		SingletonBd.connecta.conecta("bancoSalao");
		this.con = SingletonBd.connecta.getCon();

		try{
                                String Busca = nome_cli.getText();
				PreparedStatement stmt = con.prepareStatement("select id_cli, nome_cli, tel_cli from cliente where nome_cli="+Busca+"");
				ResultSet rs = stmt.executeQuery();
				while(rs.next()){
				
				nomeString.add(rs.getString("NOME_CLI"));
				
		}
		}catch(SQLException ex) {
		JOptionPane.showMessageDialog(null, "Erro em busca cliente: "+ex.getMessage(),"SQLException", JOptionPane.ERROR_MESSAGE);
		}
		SingletonBd.connecta.CloseCon();
		
		nomes = new String[nomeString.size()];
		for(int i =0;i<nomes.length;i++){
			nomes[i] = nomeString.get(i) ;
		}
		return nomes;
    }

>

5 Respostas

erico_kl

mas a tua variável nome_cli está como tipo ‘Agenda’…

Laubstein_M_cio

Existe um metodo chamado getText na classe Agenda?

psyhclo

mas a tua variável nome_cli está como tipo ‘Agenda’…

sim, pois ela existe na classe agenda, pois e o nome do campo que tem la no JFrame da classe agenda. A nao ser q eu esteja errado mas eu queria comparar esse campo q esta la na classe agenda com O Sql da classe AgendaDAO

psyhclo

Nao existe nao, pra mim esse metodo getText ja e proprio do JAVA nao?

erico_kl

Nao existe nao, pra mim esse metodo getText ja e proprio do JAVA nao?
não… quando você cria uma classe (não herdando de nenhuma outra) você está automaticamente dizendo que esta classe herdará Object… então você só herda os métodos da classe Object (olhe a hierarquia de alguma classe na documentação… você vai ver ela sempre herda primeiramente de Object)
você pode dar um “toString()” porque esse método é herdado de Object mas o método “getText” é herdado por um componente de texto, então tu não terá o método getText na tua classe Agenda (exceto claro se tua classe Agenda herda de JTextComponent ou se a classe Agenda possui o método getText próprio)

Criado 15 de novembro de 2009
Ultima resposta 16 de nov. de 2009
Respostas 5
Participantes 3