Tenho dois dois métodos no mesmo botão SALVAR

6 respostas
ArianeRebellato

Boa tarde!

Tenho um JDialog para cadastro de cidades, e um outro para pesquisa de cidades com uma JTable que traz as informações do banco…Nesta, o botão editar traz a JDialog do cadastro com as informações da linha que eu escolhi da tabela para editar…porém, eu não estou conseguindo fazer o botão salvar diferenciar quando for para inserir() e quando for para atualizar()…

// boolean isNovaCidade = true;
    
    this.cidades = new Cidades();
    this.cidades.setNome(txtCidNome.getText());
    this.cidades.setEstado(txtCidEstado.getText());
    CidadesDAO cidDAO = new CidadesDAO(bd);

    if( isNovaCidade = true){
        cidDAO.inserir(cidades);
        carregarTabCidade(cidades);
        
    }
    else{

        cidDAO.atualizar(cidades);
    }

se alguém puder me dar uma luuuuzzz…obrigada!

6 Respostas

S

Oi Ariane, ja tentou verificar a condição booleana?

Onde se Lê

colocar

Testa ae…

tabocu

Acho que este erro foi na hora dela postar no forum, provavelmente ela usa um editor e ele realçaria este erro que deve ser bem obvio pra ela.

Quando voce tenta salvar ele nao consegue diferenciar se é pra criar uma nova entrada no banco ou se é pra atualizar, mas entao qual é o comportamento do seu código? ele cria uma nova ou atualiza?

alves.Felipe

usa o Id para verificar

if(cidades.getId() == null) //salvar else //atualizar

tabocu

Na hora que ela cria um cadastro ela nao insere o id e sim o codigo. nao tem como ela verificar a existencia de uma cidade pelo id. Ela deve fazer uma pesquisa no banco e verificar se a cidade existe. Na teoria o codigo dela funciona. Nao creio que o erro esteja nessa parte que ela postou. Talvez esteja nos métodos utilizados

alves.Felipe

código… .id… tudo a mesma coisa…
não tem que fazer consulta nenhuma antes de salvar…
mas claro que para alterar, antes ela já consultou o registro e o objeto esta populado,
então o id (ou código) vai ter algum valor

Jhonny_Oliveira

@tabocu,

Se é a partir do JTable que ela chama a JDialog, ela já tem a informação código ou id do JTable, então como o amigo falou é possível sim. Não precisa vasculhar o banco.

Se id ou código está definido, chame o método que atualiza, se não estiver definido é um novo registro, então chame o método que inclui.

Criado 8 de dezembro de 2010
Ultima resposta 29 de dez. de 2010
Respostas 6
Participantes 5