Boa noite,
gostaria de saber como faço para mostrar o resultado de um pesquisa feito no meu banco de dados em um formulario… eu só consigo mostrar na JOptionPane.showMessageDialog mas fica zuado
desde já grato.
[code]public void pesquisar(Paciente pesqPac) throws SQLException {
Statement comando;
Connection conexao;
ResultSet resultado;
String sql;
conexao = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","projeto","1982");
comando = conexao.createStatement();
sql = "select * from paciente where cpf ='"+pesqPac.getCpf()+"'";
resultado = comando.executeQuery(sql);
if(resultado.next()){
setNome(resultado.getString("nome"));
setCpf(resultado.getString("cpf"));
JOptionPane.showMessageDialog(null, "NOME: "+getNome()+"\n"
+ "CPF: "+getCpf());
} else{
JOptionPane.showMessageDialog(null, "PESQUISA NÃO RETORNOU RESULTADO!");
}
resultado.close();
comando.close();
conexao.close();
}[/code]
[quote=klausantus]Boa noite,
gostaria de saber como faço para mostrar o resultado de um pesquisa feito no meu banco de dados em um formulario… eu só consigo mostrar na JOptionPane.showMessageDialog mas fica zuado
desde já grato.
[code]public void pesquisar(Paciente pesqPac) throws SQLException {
Statement comando;
Connection conexao;
ResultSet resultado;
String sql;
conexao = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","projeto","1982");
comando = conexao.createStatement();
sql = "select * from paciente where cpf ='"+pesqPac.getCpf()+"'";
resultado = comando.executeQuery(sql);
if(resultado.next()){
setNome(resultado.getString("nome"));
setCpf(resultado.getString("cpf"));
JOptionPane.showMessageDialog(null, "NOME: "+getNome()+"\n"
+ "CPF: "+getCpf());
} else{
JOptionPane.showMessageDialog(null, "PESQUISA NÃO RETORNOU RESULTADO!");
}
resultado.close();
comando.close();
conexao.close();
}[/code][/quote]
setNome(resultado.getString("nome"));
setCpf(resultado.getString("cpf"));
seujlabel.setText(getNome());
seujlabel2.setText(getCpf());
Dessa forma nao dar certo… pq os labels estao em uma outra classe…
ta assim, minha classe paciente aonde faço a conexao com o banco, fazendo inserts e as pesquisas:
[code]package clinica;
import java.sql.*;
import javax.swing.JOptionPane;
/**
*
-
@author Klaus
*/
public class Paciente extends Pessoa {
public void inserir(Paciente pac) throws SQLException {
Statement comando;
Connection conexao;
ResultSet resultado;
String sql;
conexao = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","projeto","1982");
comando = conexao.createStatement();
sql = "insert into paciente (nome, sobrenome, cpf, bairro) values ('"+pac.getNome()+"','"+pac.getSobreNome()+"','"+pac.getCpf()+"',"
+ "'"+pac.endereco.getBairro()+"')";
comando.executeUpdate(sql);
comando.close();
conexao.close();
}
public void pesquisar(Paciente pesqPac) throws SQLException {
Statement comando;
Connection conexao;
ResultSet resultado;
String sql;
conexao = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE","projeto","1982");
comando = conexao.createStatement();
sql = "select * from paciente where cpf ='"+pesqPac.getCpf()+"'";
resultado = comando.executeQuery(sql);
if(resultado.next()){
setNome(resultado.getString("nome"));
setCpf(resultado.getString("cpf"));
JOptionPane.showMessageDialog(null, "NOME: "+getNome()+"\n"
+ "CPF: "+getCpf());
} else{
JOptionPane.showMessageDialog(null, "PESQUISA NÃO RETORNOU RESULTADO!");
}
resultado.close();
comando.close();
conexao.close();
}
}
[/code]
a classe de pesquisa:
[code]private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Paciente pesqPac = new Paciente();
pesqPac.setCpf(textField_Cpf.getText());
try {
pesqPac.pesquisar(pesqPac);
} catch (SQLException ex) {
System.out.println(ex);
}
textField_Cpf.setText("");
[/code]
e por fim aonde eu quero que apareça o resultado
[code]package view;
/**
*
Quem disse? Basta dar um import na classe DAO para a classe do formulário e usar o nome da classe dor formulário para mostrar os dados.
Ex:
Classe_Do_Form.Jlabel1.setText("contúdo");
Quem disse? Basta dar um import na classe DAO para a classe do formulário e usar o nome da classe dor formulário para mostrar os dados.
Ex:
Classe_Do_Form.Jlabel1.setText("contúdo");
certeza que dar cara?? eu faco o import na classe paciente
import view.PanelMostraPaciente;
mas mesmo assim os jlabels n fica diponivel para mim, creio eu por serem private, n é???
// Variables declaration - do not modify
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
// End of variables declaration
}