Exibir Consultas SQL

Gente acabei de criar uma conta aqui porque estou com uma dúvida e só vejo meu professor semana que vem.
Bom, não sei se estou postando na área certa, mas eu estou no segundo ano do curso de técnico em informática, apesar de ainda não ter chegado nessa parte eu estou interessado na utilização do SQL com Java. Eu já tenho a aplicação e o banco de dados prontos, a aplicação faz tanto inserção quanto consulta. A inserção funciona perfeitamente, ao que parece a consulta também funciona mas não exibe o resultado da consulta. Eu não tenho quase nenhum conhecimento na área, encontrei um material bem interessante no site de um professor e resolvi tentar.

Aqui algumas partes dos códigos que eu utilizei, da inserção para a consulta a única coisa que eu mudei foi de “Update” para “Query” e o comando de “INSERT” para “SELECT”.

INSERÇÃO:

public void inserePassageiro() { try{ pst = con.prepareStatement("INSERT INTO passageiro(Nome,rg,pontos, idPoltrona) VALUES(?,?,?,?)"); pst.setString(1, p1.getNome()); pst.setInt(2, p1.getRg()); pst.setInt(3, p1.getPontos()); pst.setInt(4, p1.getIdPoltrona()); pst.executeUpdate(); } catch(SQLException ex) { Logger lgr = Logger.getLogger(CadastraPassageiro.class.getName()); lgr.log(Level.SEVERE, ex.getMessage(), ex); } }

CONSULTA:

public void procuraPassageiro() {
try{
pst = con.prepareStatement("select p.nome, po.idpoltrona\n" +
"from passageiro p, poltrona po\n" +
"where p.idpoltrona = po.idpoltrona\n" +
"and p.rg = ?; ");
pst.setInt(1, getRg());
pst.executeQuery();
} catch(SQLException ex) {
Logger lgr = Logger.getLogger(CadastraPoltrona.class.getName());
lgr.log(Level.SEVERE, ex.getMessage(), ex);
}
}

Me desculpem pela ignorância se tiver algum erro muito idiota, mas sou iniciante.

*EDIT: a parte que recebe os dados é feita através de um formulário JFrame.

Minhas Obs:
Tira esse \n da sua query.
No seu método de busca vc também vai precisar de um ResultSet do pacote SQL.
ai vai ficar assim:

rs = pst.executeQuery();

depois vc vai ter que ver se teve algum retorno sua busca. Se sua query retornar mais de um resultado vc deve usar assim:

while(rs.next()){
...
}

Caso tenha apenas um registro.

rs.first();

Depois vc tem que setar os resultados para seu Form.

Exemplo:

String nomePassageiro = rs.getString("nome_da_sua_coluna");
jTextFieldNomePassageiro.setText(nomePassageiro);

Desculpa se tiver algum erro, mas é que não tenho como testar aqui, fiz de cabeça. Mas é mais ou menos isso ae…

[quote=ttelsen]Minhas Obs:
Tira esse \n da sua query.
No seu método de busca vc também vai precisar de um ResultSet do pacote SQL.
ai vai ficar assim:

rs = pst.executeQuery();

depois vc vai ter que ver se teve algum retorno sua busca. Se sua query retornar mais de um resultado vc deve usar assim:

while(rs.next()){
...
}

Caso tenha apenas um registro.

rs.first();

Depois vc tem que setar os resultados para seu Form.

Exemplo:

String nomePassageiro = rs.getString("nome_da_sua_coluna");
jTextFieldNomePassageiro.setText(nomePassageiro);

Desculpa se tiver algum erro, mas é que não tenho como testar aqui, fiz de cabeça. Mas é mais ou menos isso ae…[/quote]

Concordo plenamente com o que o amigo acima disse, o que é viavel também é, criar um ArrayList no método de busca e ao final do while que nosso amigo citou adicionar seu objeto ao Array, assim o metodo retornaria o Array.

Depois fica legal exibir os resultados em JTable… que há diversos post bem explicativos de como fazer o seu proprio model.

Valeu mesmo cara, consegui aqui.

Marque o topico como resolvido então.

como faço isso?

Vá ao primeiro topico clique em editar e no assunto coloque [Resolvido]