MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Spring mongodb obtém ID do item inserido após Salvar


Isso é muito interessante e pensei em compartilhar. Acabei de descobrir a solução para isso com a ajuda do comentário do BatScream acima:

Você criaria um objeto e o inseriria no seu MongoDB:
    Animal animal = new Animal();
    animal.setName(name);
    animal.setCat(cat);

    mongoTemplate.insert(animal);

Sua classe animal fica assim com getters e configurações para todos os campos:
public class Animal {

    @Id
    @JsonProperty
    private String id;
    @JsonProperty
    private String name;
    @JsonProperty
    private String cat;

    public String getId() {
        return id;
    }
}

DEPOIS de ter feito a inserção em mongoTemplate.insert(animal); , você pode chamar o método animal.getId() e ele retornará o ObjectId que foi criado.