MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

La ricerca di Spring Boot Mongodb per ID restituisce null

Guarda il tuo codice. Hai dichiarato _id come tipo Long.

@Id
private long _id;

Ma nei metodi sottostanti stai passando String id per soddisfare i criteri.

Quindi non funziona.

@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);

    }