Alterar e excluir do Banco de dados

To com o segunte problema, criei um programa de cadastros de funcionarios ficticios, onde coloco nome cpf e etc do funcionario, depois mando tudo para um banco mysql e tenho uma JList que me mostra o nome do funcionario que eu salvei, ate ai tudo bem, o problema é que era pra quando eu selecionar o nome na JList ele deveria me mostrar todas as infos do funcionario nos mesmos JTextField em que eu usei para cadastrar para poder alterar ou excluir mas ta complicado. Eu ja fiz o seguinte:

private JList empregados;

empregadosRenderer = new DefaultListCellRenderer(); empregadosModel = new DefaultListModel(); empregados = new JList(empregadosModel); empregados.setCellRenderer(empregadosRenderer);

class ListHandler extends MouseAdapter{ public void mouseCliked(MouseEvent me){ int index = empregados.locationToIndex(me.getPoint()); Object obj = empregadosModel.get(index); if(obj instanceof Empregado){ Empregado emp = (Empregado)obj; exibeEmpregado(emp); habilitaCampos(); incluir.setEnabled(false); alterar.setEnabled(true); excluir.setEnabled(true); salvar.setEnabled(false); cancelar.setEnabled(true); }else{ desabilitaCampos(); incluir.setEnabled(true); alterar.setEnabled(false); excluir.setEnabled(false); salvar.setEnabled(false); cancelar.setEnabled(false); } } }

e esta e a classe exibeEmpregado

private void exibeEmpregado(Empregado empregado){ SimpleDateFormat formater = new SimpleDateFormat("dd/MM/yyyy"); if (empregado != null){ txtCPF.setText(empregado.getCpf()); txtMatricula.setText(empregado.getMatricula()); txtNome.setText(empregado.getNome()); txtNascimento.setText(formater.format(empregado.getNascimento())); txtEndereco.setText(empregado.getEndereco()); txtComplemento.setText(empregado.getComplemento()); txtCep.setText(empregado.getCep()); txtBairro.setText(empregado.getBairro()); txtCidade.setText(empregado.getCidade()); txtSalario.setText(new Double (empregado.getSalario()).toString()); departamentos.getModel().setSelectedItem(empregado.getDepartamento()); estados.getModel().setSelectedItem(empregado.getEstado()); } }

sera que alguem pode me dar um help ???

Eu tenho um esquema que eu mesmo elaborei para esse tipo de situação hehe. Como eu sempre trabalho com Web, um exemplo seria usando o combobox. No combo eu posso jogar um value e o rótulo que irá aparecer. Eu poderia armazenar no value, o ID do usuario e no rótulo o nome, e usar o Ajax para fazer as pesquisas conforme eu quiser. No Java eu não achei nada parecido nos controles JComboBox e outros. A idéia seria, usar o ArrayList. No laço que você for fazer para preencher o JList, vá adicionando o ID do usuário. Depois, você pega o index que está selecionado e da um get no ArrayList usando esse index.

Não sei se fui bem claro. Qualquer coisa posta ae.

Flw!!

Não sei se eu entendi bem, tambem trabalho com web mas costumo usar PHP e não tenho problema com esse tipo situação, mas com java não consigo fazer a mesma coisa. Cara ta complicado por que eu ja to tentando pegar a referencia da JList com o getPoint mas não ta funcionando. Mas valeu a ajuda!!!

Então cara, eu vou tentar escrever um exemplo bem rapido aqui, talvez você entenda. Eu não conheço muito a JList então se tiver alguma coisa errada você corrige depois heeh:

List<Integer> ids = new ArrayList<Integer>();

Statement stm = conexao.conn.createStatement();
ResultSet rs = stm.executeQuery("SELECT * FROM funcionarios");
while(rs.next()) {
     jlist.add(rs.getString("nome");
     ids.add(rs.getInt("id");
}

Depois para recuperar isso:

int selecionado = jlist.getSelectedIndex();
int idfuncionario = ids.get(selecionado);

Bom, com o JComboBox funciona certinho, agora com o JList deve ser semelhante ou igual a isso.

Flw!

Falou, eu vou tentar isso, qualquer duvida eu volto a postar ! Obriagado.