Расширенный запрос/критерий весенних данных

Я создавал службу REST на основе Spring, используя MongoDB и Spring Data - MongoDB.

Смотри ниже; части моей модели данных:

@Document
public class User{
    .....
    private List<EMail> emails;
    .....
}

public class EMail {
    .....
    private bool defaultMail;
    private String eMailAdress;
    .....
}

Электронная почта не аннотируется как документ MongoDb.

Я хотел бы добиться следующих функций в репозитории.

public Boolean exists(String email);
public User getUserByEmail(String email);

Я могу реализовать простые запросы, используя Query и Criteria API, но мне не удалось выполнить вышеуказанные функции.


person lg.lindstrom    schedule 20.09.2012    source источник


Ответы (1)


Я нашел ответ на свой вопрос, и я хотел бы поделиться.

Запрос должен выглядеть так:

query (where("emails").elemMatch(where("eMailAdress").is(email)))

Я нашел ответ, прочитав руководство по MongoDb, которое оказалось гораздо более понятным, чем руководство по пружинным данным.

//lg

person lg.lindstrom    schedule 21.09.2012