MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Spring Boot Mongodb-Suche nach ID gibt null zurück

Sehen Sie sich Ihren Code an. Sie haben _id als Long-Typ deklariert.

@Id
private long _id;

Aber in Ihren unten stehenden Methoden übergeben Sie String id um den Kriterien zu entsprechen.

Es funktioniert also nicht.

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

    }