sql >> Base de Datos >  >> NoSQL >> MongoDB

La búsqueda de Spring Boot Mongodb por ID devuelve nulo

Mire su código. Ha declarado _id como tipo largo.

@Id
private long _id;

Pero en sus métodos a continuación, está pasando String id para que coincida con los criterios.

Entonces no está funcionando.

@Override
        public Account findOne(String id) {
            Account account = dbOperations.getMongoOpertion().findOne(Query.query(Criteria.where("_id").is(id)),
                    Account.class, "account");
            return account;
        }

@Override
    public void delete(String id) {
        Query query = new Query();
        query.addCriteria(Criteria.where("id").is(id));
        Account account = dbOperations.getMongoOpertion().findOne(query, Account.class);
        dbOperations.getMongoOpertion().remove(account);

    }