Passagem de parametro com jComboBox

Gente eu tenho as duas tabelas descritas a baixo:
NOME: usuarios;
CAMPOS: id_usu; id_func_fk; login; senha.

NOME: funcionarios;
CAMPOS: id_func; nome;

No formulário onde cadastro os usuários do sistema preciso de jComboBox que liste o nome dos funcionários e quando um novo registro da tabela usuários for salvo ele envie o id do funcionário selecionado para a tabela usuários.

Atualmente eu faço isso através de um for para alimentar o jComboBox e antes do registro da tabela usuarios ser salvo eu uso outro for que percorre a tabela funcionarios com um if comparando o valor do campo nome com o valor retornado do jComboBox pela função getSelectedItem. Quando eu encontro o registro corresponde ao valor do jComboBox no campo nome eu pego o valor do campo id_func da tabela funcionarios e atribuo ao campo id_func_fk da tabela usuarios.

Eu até que poderia manter método, mesmo sendo ineficiente, mas o problema e que eu não vejo o nome do funcionário na jTable e nem o item selecionado do jComboBox é atualizado gostaria de saber como resolver esse problema para que eu visse o nome do funcionário tanto no jComboBox como na jTable e que o item selecionado do jComboBox mudasse de acordo com o registro selecionado na jTable, mas que o valor passado de uma tabela pra a outra fosse o campo id_func.

Obrigado.

P.S. Estou usando o netbeans.

Talvez esse trecho de cógigo possa ajudar: 1 eu tenho minha classe de conexao com o banco de dados:

[code]import java.sql.*;
import javax.swing.JOptionPane;

public class FabricaConexao {

public static Connection getConexao() throws SQLException{
    
    try {
        
        Class.forName( "com.mysql.jdbc.Driver" );
        return ( DriverManager.getConnection( "jdbc:mysql://localhost/controlacademic", "root", "" ) );
        
    } catch( ClassNotFoundException e ) {
        
        JOptionPane.showMessageDialog( null, e.getMessage(), "Excecao", JOptionPane.ERROR_MESSAGE );
        return null;
        
    }
    
}

}
[/code]
Depois, na minha classe DIsciplunaDAO:

[code]public class DisciplinaDAO {

private Connection conexao;

public DisciplinaDAO() throws SQLException{
    
    conexao = FabricaConexao.getConexao();
} 

public List<Disciplina> selecionarDisciplinas(int idProfessor){
    
    List<Disciplina> disciplinas = new ArrayList();
    
    try{
        
        String sql = "SELECT NomeDisciplina FROM disciplina, disciplinaprofessor, professor" +
        " WHERE idProfessor = ? AND idProfessor = Professor_idProfessor AND " +
                "Disciplina_idDisciplina = idDisciplina";
        PreparedStatement stmt = this.conexao.prepareStatement(sql);
        stmt.setInt(1, idProfessor);
        ResultSet result = stmt.executeQuery();
        
        while(result.next()){
            Disciplina disciplina = new Disciplina();
            disciplina.setNome(result.getString("nomeDisciplina"));
            
            disciplinas.add(disciplina);
        }
        
        return disciplinas;
        
    }catch( SQLException e ) {
        JOptionPane.showMessageDialog( null, e.getMessage(), "Erro", JOptionPane.ERROR_MESSAGE );
        return null;
    }
}

}
[/code]

e depois , na classe que vai executar tudo isso:

[code]private class Handler implements ActionListener{
@Override
public void actionPerformed(ActionEvent e){
if(e.getSource() == ComboBox1){
if( ComboBox1.getSelectedIndex() != number ) {
number = ComboBox1.getSelectedIndex();
Label2.setVisible(true);
LabelDisciplina.setText(disciplina);
LabelDisciplina.setVisible(true);
Label3.setVisible(true);
disciplina = ComboBox1.getSelectedItem().toString();
if(cobaia != disciplina){
int a = ComboBox2.getComponentCount();
for( int i = 0; i<a ; i++ ){
ComboBox2.removeItem(i);
}
cobaia = disciplina;
}
ComboBox2.addItem(“Selecione …”);
try{
AlunoDAO alunos = new AlunoDAO();
List alns = alunos.selecionarAlunos(disciplina);
for( Aluno aluno : alns ){
ComboBox2.addItem(aluno.getNome());
}
}catch( SQLException ex ){
JOptionPane.showMessageDialog(null, ex.getMessage(), “erro”, 0);
}

            }
        }[/code]

Neste exemplo, ele pega a disciplina do combo box e “joga” ela num label, e assim por diante, vou trabalhando conforme a disciplina do combobox

Basicamente é isso, mas qq duvida, e so perguntar, se eu puder ajudar …