Dados: Netbeans 6.9.1 – Sql Server 2008
Pessoal, tenho uma jtable que quando clico na linha, eu jogo todas as informações dessa linha ( codigo, nome, rg ) em todos os respectivos campos ( jtextfield, jcombobox, etc ).
Trecho do código onde Jogo os valores de uma linha da table nos campos
private void jTablePessoaFisicaMouseClicked(java.awt.event.MouseEvent evt) {
desabilitar_campos();
if(jTablePessoaFisica.getSelectedRow() != -1) {
jtPes_Codigo.setText(String.valueOf(jTablePessoaFisica.getModel().getValueAt(jTablePessoaFisica.getSelectedRow(),0)));
jtPes_Nome.setText(String.valueOf(jTablePessoaFisica.getModel().getValueAt(jTablePessoaFisica.getSelectedRow(), 1)));
jftPes_Telefone1.setText(String.valueOf(jTablePessoaFisica.getModel().getValueAt(jTablePessoaFisica.getSelectedRow(), 2)));
No entanto, ao “Editar” e “Salvar” os valores desses campos, somente os campos em “int” salvam a alteração… os campos com “String” não salvam.
Botão Salvar
private void jbPes_SalvarActionPerformed(java.awt.event.ActionEvent evt) {
try{
{
...
}
if(preencher_objeto()){
PessoaFisicaDAO PFDAO = new PessoaFisicaDAO();
PFDAO.AlterarPessoaFisica(objPessoa, objPessoaFisica);
limpar_campos();
desabilitar_campos();
}
else{
JOptionPane.showMessageDialog(null,"Não foi possível alterar ! ");
}
}
}catch(Exception erro){
JOptionPane.showMessageDialog(null,"Erro ao Salvar inclusão ou alteração : "+erro.getMessage());
}
}
Trecho do código que “preenche o objeto”
private boolean preencher_objeto(){
try{
objPessoa = new Pessoa();
//objPessoa.setCodigo(Integer.parseInt(jtPes_Codigo.getText()));
objPessoa.setNome(jtPes_Nome.getText());
objPessoa.setTelefone1(Integer.parseInt(jftPes_Telefone1.getText()));
objPessoa.setTelefone2(Integer.parseInt(jftPes_Telefone2.getText()));
objPessoa.setLogradouro(jtPes_Logradouro.getText());
objPessoa.setNumero(jtPes_Numero.getText());
Método que altera na classe DAO
public boolean AlterarPessoaFisica(Pessoa objPessoa, PessoaFisica objPessoaFisica) throws SQLException{
Conexao conexao = new Conexao();
PreparedStatement pstmt = conexao.getConexao().prepareStatement(
" update pessoa set nome = ?, telefone1 = ?, telefone2 = ?, logradouro = ?, numero = ?, complemento = ?, bairro = ?,"
+ " cep = ?, cidade = ?, uf = ?, pais = ?, email = ?, tipopessoa = ? where codigo = ? "+
" update pessoafisica set cpf = ?, rg = ?, sexo = ?, datanascimento = ?, salario = ?, cargo = ?, escolaridade = ?, "
+ "doenca = ?, deficiencia = ?, observacoes = ?, tipopessoafisica = ? "
+ " where exists (select * from pessoa, pessoafisica where pessoafisica.codigo = pessoa.codigo ) ");
pstmt.setString(1, objPessoa.getNome());
pstmt.setInt(2, objPessoa.getTelefone1());
pstmt.setInt(3, objPessoa.getTelefone2());
pstmt.setString(4, objPessoa.getLogradouro());
pstmt.setString(5, objPessoa.getNumero());
pstmt.setString(6, objPessoa.getComplemento());
pstmt.setString(7, objPessoa.getBairro());
pstmt.setInt(8, objPessoa.getCep());
pstmt.setString(9, objPessoa.getCidade());
pstmt.setString(10, objPessoa.getUf());
pstmt.setString(11, objPessoa.getPais());
pstmt.setString(12, objPessoa.getEmail());
pstmt.setString(13, objPessoa.getTipopessoa());
pstmt.setInt(14, objPessoa.getCodigo());
pstmt.setInt(15, objPessoaFisica.getCpf());
pstmt.setInt(16, objPessoaFisica.getRg());
pstmt.setString(17, objPessoaFisica.getSexo());
pstmt.setString(18, objPessoaFisica.getDatanascimento());
pstmt.setDouble(19, objPessoaFisica.getSalario());
pstmt.setString(20, objPessoaFisica.getCargo());
pstmt.setString(21, objPessoaFisica.getEscolaridade());
pstmt.setString(22, objPessoaFisica.getDoencas());
pstmt.setString(23, objPessoaFisica.getDeficiencia());
pstmt.setString(24, objPessoaFisica.getObservacoes());
pstmt.setString(25, objPessoaFisica.getTipopessoafisica());
System.out.println("5");
int registros = pstmt.executeUpdate();
System.out.println("6");
if(registros == 1){
return true;
}
else
return false;
}
