Duplicando linhas ao salvar

Pessoal, estou com um problema bem grande… Tenho um jtable com muitas informações onde nela é salvo itens novos e também faz alterações na linha. o problema é que tudo isso tem q ser feito dentro de uma mesma interface e com um único botão. O sistema tem q ser capaz de entender em que momento estou salvando e em que momento estou alterando. O grande problema é pq eu estou usando DefaultTableModel . Tentei com o método insert, mas ele está duplicando itens na hora de salvar novas linhas. Alguém tem alguma dica de como posso resolver esse problema?

Implemente um TableModel, é mais fácil.

Também poderia cria botões para alterar ou inserir que abriria um Dialog e criaria ou modificaria a linha. Ao clicar no botão inserir, criaria no banco, e no botão alterar, atualizaria no banco.

Olá Diego, meu projeto está muito grande c muitas dependências para trocar nesse momento. Atualmente tenho Jtable que usam o método de 2 botões, mas nesse caso que estou fazendo, é necessário que o sistema reconheça qual das mudanças estou aplicando. Alguma vezes as pessoas vão entra apenas para atualizar alguma informação, mas em outra essas pessoa vão entrar para adicionar novos dados ou as vezes elas fazem os dois ao mesmo tempo.

Poderia usar o banco que verificaria igualdades impedindo a duplicação, só seria necessário mudar o SQL ou a forma de persistência, mas poderia sobrecarregar o banco. Se existe um primary key nos registros, poderia usar o REPLACE que evitaria duplicidade.

De qualquer forma, o melhor meio de resolver o problema seria implementar o TableModel.