Você sempre está alterando o mesmo objeto, neste caso é o grandeComissao.
Acredito que você deveria criar sempre um novo ao invés de atualizar o existente.
W
wladyband
Obrigado por tentar me ajudar. O meu objetivo é pegar o registro de uma tabela chamada Membro através do ID e gravar esses registro em outra tabela chamada GrandeComissao.
@staroski será que existe uma forma de alterar o código para que ele consiga pegar o registro que está na tabela membro e salvar como se fosse um novo registro na tabela grandeComissao?
S
Solucao aceita
staroski1 like
Primeiramente o framework se chama Spring e não Sprint.
Você tem que criar um novo objeto do tipo GrandeComissao.
Atualmente você está usando uma variável de instância, por isso está alterando sempre o mesmo objeto, está errado, você tem que criar um novo, usa uma variável local, aí fica mais legível.
Eu tinha colocando ela como variável global e ao colocar ele como local funcionou perfeitamente. Sou muito grato, muito obrigado. É muito estranho só pelo simples fato de colocar ela como local ela funcionar.
L
Lucas_Camara1 like
Evite ao máximo usar variáveis de forma global (escopo de classe). Isso só dificulta as implementações e pode trazer efeitos colaterais em sistemas web onde há vários usuários usando o sistema.
S
staroski1 like
Java não tem o conceito de variável global, o mais próximo de uma variável global seria uma variável de classe (estática).
Imagino que você tinha uma variável de instância (não estática).
Não tem nada de estranho, dessa forma você está criando um NOVO objeto.
Se você chama o save do seu repository passando um novo objeto, ele fará um INSERT no banco, se passar um objeto já existente, ele fará o UPDATE no banco.