Eu tenho uma interface que estende o CrudRepository. Estou precisando fazer o update de um objeto, mas tenho em mãos apenas os os valores dos atributos que devem ser modificados e o id (chave primária). Tentei usar o método save (repository.save(objeto)), mas os atributos que eu não preenchi, estão sobrescrevendo os valores no BD e os deixando nulos. Eu gostaria que o comportamento fosse de merge, ou seja, os campos que estão preenchidos sobrescreveriam no banco, os nulos não.
Uma solução paliativa que encontrei, foi usar a annotation @Query, fazendo o update escrevendo o script SQL setando apenas os campos que eu deveria alterar. Mas, gostaria de saber se existe uma forma de não ter que escrever o script SQL, aproveitando os métodos ofertados pela CrudRepository.
Muito obrigado!