Мне нужно проверить, содержится ли строка в поле документа массива.
Класс Application выглядит так:
@Document
public class Application {
@Id
private String code;
@DBRef
private List<ApplicationScope> scopes;
}
Это может выглядеть так:
{
_id: ObjectId("...."),
scopes: ["a", "b", "c"]
}
Мне нужно найти все документы, в которых поле scopes содержит заданную строку.
Я использую mongoTemplate, чтобы реализовать это.
Любые идеи?
вы можете использовать $ In (docs.mongodb.com/manual/reference/operator/query/in) из mongodb, чтобы найти, например, db.application.find ({scopes: {$ in: [ARRAY]}}) в mongotemplate mongoTemplate.findOne (новый запрос (Criteria.where ("scopes") .in (ARRAY)), Application.class)
Добавить код класса ApplicationScope