Duvida sobre consulta no java

Ola to com duvida sobre uma consulta no java…

criei uma metodo para consultar o paciente com o Jtable onde o metodo se encontra na classe conectar…segue abaixo

[b][i]
public Vector proximalinha(ResultSet rs, ResultSetMetaData rsmd){
Vector linhaAtual = new Vector();
try{
for(int i=1;i<rsmd.getColumnCount();++i){
switch(rsmd.getColumnType(i)){
case Types.VARCHAR:
linhaAtual.addElement(rs.getString(i));
break;
case Types.INTEGER:
linhaAtual.addElement(new Long(rs.getLong(i)));
break;
case Types.TIMESTAMP:
linhaAtual.addElement(rs.getDate(i));
break;
}}
}catch(SQLException ex){

}
return linhaAtual;
}

public void mostrapaciente(){
Statement stmt;
ResultSet rs;
JTable tabela;
try{
Vector cabecalho = new Vector();
Vector linhas=new Vector();
stmt=conex.createStatement();
rs=stmt.executeQuery(“SELECT * FROM paciente”);
rs.next();
ResultSetMetaData rsmd=rs.getMetaData();
for(int i=1;i<rsmd.getColumnCount();++i){
cabecalho.addElement(rsmd.getColumnName(i));
}do{
linhas.addElement(proximalinha(rs,rsmd));
}while(rs.next());
tabela = new JTable(linhas,cabecalho);
JScrollPane scroller = new JScrollPane(tabela);
getContentPane().add(scroller,BorderLayout.CENTER);
validate();
setSize(400,200);
setTitle(“Pessoas Cadastradas”);
setLocationRelativeTo(null);
stmt.close();
}catch(SQLException ex){}

}

ai depois chamei esse metodo para a classe que criei da consulta paciente

JB5.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
conexao con=new conexao();
con.conectar();
con.mostrapaciente();

}}

);[/b][/i]

1º - as linhas:
getContentPane().add(scroller,BorderLayout.CENTER);
validate();
setSize(400,200);
setTitle(“Pessoas Cadastradas”);
setLocationRelativeTo(null);
estao me retornando erro flando e q o metodo e indefinido para conexao(The method is undefined for the type conexao) - esse mesmo erro acontece em todas essas 5 linhas…ai ele da como sugestao como sugestao criar metodos para elas…porem msmo criando esse metodos a caixa nao aparece qndo clico no botao “buscar” no meu caso…simplesmente não faz nda!
2º - entao ai to tentando fazer da seguinte forma…primeiramente queria que pode-se consultar os pacientes por dois modos…nome ou cpf…ai no caso teria que igualar no sql “rs=stmt.executeQuery(“SELECT * FROM paciente where nome=”+nome);” porem depois q crio o metodo e o chamo na outra classe teria q igular o nome q e o q digito na caixa de texo no swing com o nome do metodo…como faço isso???
3º - ai logo apois o retorno da pesquisa…queria poder clicar no paciente que quero…ao clicar ou precionar um botao…“ok” por exemplo…ele abri-se uma tela ou na mesma tela…colocando todos os dados para mim…exemplo…Nome: Nome do paciente…CPF: cpf do paciente…assim por diante…

vlw galera!

Melhore seu post, se for consulta use PreparedStatement ou Statement

veja.

PreparedStatement stm = conexao.PreparedStatement("select * from tabela where codigo = ?");
stm.setInt(1,codigo.getText());
ResultSet rs = stm.executeQuery()
while(rs.next){
    System.out.println(rs.getString("valor que quero exibir"));
}

Se naum for isso, melhore seu post e coloque seus codigos entre tags code para entender melhor o que precisa.

melhorando o codigo…

[code]
public Vector proximalinha(ResultSet rs, ResultSetMetaData rsmd){
Vector linhaAtual = new Vector();
try{
for(int i=1;i<rsmd.getColumnCount();++i){
switch(rsmd.getColumnType(i)){
case Types.VARCHAR:
linhaAtual.addElement(rs.getString(i));
break;
case Types.INTEGER:
linhaAtual.addElement(new Long(rs.getLong(i)));
break;
case Types.TIMESTAMP:
linhaAtual.addElement(rs.getDate(i));
break;
}}
}catch(SQLException ex){

}
return linhaAtual;
}

public void mostrapaciente(){
Statement stmt;
ResultSet rs;
JTable tabela;
try{
Vector cabecalho = new Vector();
Vector linhas=new Vector();
stmt=conex.createStatement();
rs=stmt.executeQuery(“SELECT * FROM paciente WHERE nome LIKE '”+"%"+nome+"%"+"’");
rs.next();
ResultSetMetaData rsmd=rs.getMetaData();
for(int i=1;i<rsmd.getColumnCount();++i){
cabecalho.addElement(rsmd.getColumnName(i));
}do{
linhas.addElement(proximalinha(rs,rsmd));
}while(rs.next());
tabela = new JTable(linhas,cabecalho);
JScrollPane scroller = new JScrollPane(tabela);
getContentPane().add(scroller,BorderLayout.CENTER);
validate();
setSize(400,200);
setTitle(“Pessoas Cadastradas”);
setLocationRelativeTo(null);
stmt.close();
}catch(SQLException ex){}

}

//ai depois chamei esse metodo para a classe que criei da consulta paciente

JB5.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
conexao con=new conexao();
con.conectar();
con.mostrapaciente();

}}

);[/code]

entao…quase isso…tenho duas classe uma consulta paciente e a outra conexao…

ai chamo o metodo na consulta paciente onde tenho q igualar a variavel do script da query com JT1(varivel Jtextfield que criei onde digito o nome que quero buscar)…
apois isso abre na tela a janela da busca…isso q desejo fazer…primeiramente!

Pelo que entendi vc esta precisando abrir uma outra tela para consulta e depois retornar para o form que abriu sua consulta, se for isso veja o link:. http://www.guj.com.br/posts/list/223118.java

Consegui fazer o esquema dessa maneira que explico ae.

qquer duvida, posta ae.

entao tava mexendo aki ai acontece um problema meio estranho se poder me dar uma força…

tenho esse codigo na tabela consulta…

package janelas;
import javax.swing.*;
import javax.swing.table.*;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;
import java.util.ArrayList;
import java.util.Vector;

import conexao.conexao;
import tabelas.*;
public class ConsultaPaciente extends JFrame {
	
	conexao cx=new conexao();
	Connection conex=cx.conectar();
	
	//implementando mostra paciente
	public Vector proximalinha(ResultSet rs, ResultSetMetaData rsmd){
		Vector linhaAtual = new Vector();
		try{
			for(int i=1;i<rsmd.getColumnCount();++i){
				switch(rsmd.getColumnType(i)){
				case Types.VARCHAR:
					linhaAtual.addElement(rs.getString(i));
				break;
				case Types.INTEGER:
					linhaAtual.addElement(new Long(rs.getLong(i)));
				break;
				case Types.TIMESTAMP:
					linhaAtual.addElement(rs.getDate(i));
					break;
				}}
		}catch(SQLException ex){
		
		}
		return linhaAtual;	
	}

	//mostra paciente
	public void mostrapaciente(){
		Statement stmt;
		ResultSet rs;
		
		try{
			Vector cabecalho = new Vector();
			Vector linhas=new Vector();
			stmt=conex.createStatement();
			rs=stmt.executeQuery("SELECT * FROM paciente");// WHERE nome LIKE '"+"%"+JT1+"%"+"'");
		    rs.next();
		    ResultSetMetaData rsmd=rs.getMetaData();
		    for(int i=1;i<rsmd.getColumnCount();++i){
		    	cabecalho.addElement(rsmd.getColumnName(i));
		    }do{
		    	linhas.addElement(proximalinha(rs,rsmd));
		    }while(rs.next());
		    JTable tabela = new JTable(linhas,cabecalho);
		    JScrollPane scroller = new JScrollPane(tabela);
		    getContentPane().add(scroller,BorderLayout.CENTER);
		    validate();
		    setSize(600,300);
		    setTitle("Pessoas Cadastradas");
		    setLocationRelativeTo(null);
		    stmt.close();
		   }catch(SQLException ex){}
		}
	
	JLabel JL0,JL1,JL13;
	JTextField JT1,JT13;
	JButton JB1,JB2,JB5;
	
		public ConsultaPaciente(){
		super("Health E²AC");
		Container incluir = getContentPane();
		setLayout(null);
		setResizable(false);
		setSize(800,600);
		setVisible(true);
		setLocationRelativeTo(null);
		
		//JLabels
		JL0 = new JLabel("Consulta Paciente");
		JL1 = new JLabel ("Nome:");
		JL13 = new JLabel ("CPF:");
		
		//JTextFields
		JT1 = new JTextField (30);
		JT13 = new JTextField (30);
				
		
		//JButtons
		
		JB1 = new JButton("Cancelar");
		JB2 = new JButton("Sair");
		JB5 = new JButton("Buscar");
		
		
		//KeyEvent_Button		
		
		
		//Posicionamento_JLabel
		JL0.setFont(new Font("Tahoma",Font.BOLD,30));
		JL0.setForeground(Color.blue);
		JL0.setBounds(10,10,300,50);		
		JL1.setBounds(10,100,130,20);
		JL13.setBounds(320,100,130,20);
				
		//Posicionamento_JTextField				
		JT1.setBounds(50,100,260,20);
		JT13.setBounds(350,100,130,20);
				
		//Posicionamento_JButton	
		
		JB1.setBounds(480,450,100,20);
		JB2.setBounds(610,450,100,20);
		JB5.setBounds(480,100,80,20);
		
		
		//Funcoes_JButtons
				
		JB1.addActionListener(new ActionListener(){
					public void actionPerformed(ActionEvent e){
						JT1.setText("");
						JT13.setText("");
									
						//Posicionando_Cursor
						JT1.requestFocus();
					}
				}		
		);
		
		JB2.addActionListener(
				new ActionListener(){
					public void actionPerformed(ActionEvent e){
						ConsultaPaciente.this.dispose();
						}					
				}		
		);
		
		JB5.addActionListener(new ActionListener(){
				public void actionPerformed(ActionEvent e){
					mostrapaciente();
					
					}}
				
		);
		
		//Adicionando_JLabels		
		incluir.add(JL0);
		incluir.add(JL1);
		incluir.add(JL13);
				
		//Adicionando_JTextFields		
		incluir.add(JT1);
		incluir.add(JT13);
		
		
		
				
		//Adicionando_JButtons	
		
		incluir.add(JB1);
		incluir.add(JB2);
		incluir.add(JB5);
		
	}
	
	public static void main(String[]args){
		ConsultaPaciente consul = new ConsultaPaciente();
consul.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
}

no botao buscar ‘JB5’ é q executo a busca que quero realizar…porem ta acontecendo o seguinte, ao clicar no botao, chama a jtable porem ela esta vindo igual a tela de consultapaciente,com os msmo campos, e não esta vindo em sim o q era pra vir no caso as pessoas q tenho no banco…abre outra tela igualzinha a tela de tras no caso consultapaciente…mais sei q e a função msmo q esta executando pois no campo title(“Pessoa Cadastradas”) aparece qndo chamo essa tela…q poderia ser…
vlw

ai galera o problema acima consegui resolver mais agora preciso de uma seguinte funcionalidade…poder clicar no paciente que quero e assim abro outra tela com os dados dele…so preciso do seguinte…dar dois cliques na pessoa e abrir outra tela com os dados…ja tenho ate a outra tela com todos os campos dele…ai penso eu q ao clicar na pessoa igualo os campos com os resultados q viram e os dados devem aparecer na tela…help ai…
vlw!