Spring boot: запрос к массиву dbRef

Мне нужно проверить, содержится ли строка в поле документа массива.

Класс Application выглядит так:

@Document
public class Application {

   @Id
   private String code;

   @DBRef
   private List<ApplicationScope> scopes;
}

Это может выглядеть так:

{
  _id: ObjectId("...."),
  scopes: ["a", "b", "c"]
}

Мне нужно найти все документы, в которых поле scopes содержит заданную строку.

Я использую mongoTemplate, чтобы реализовать это.

Любые идеи?

Добавить код класса ApplicationScope

Marco 10.12.2018 10:04

вы можете использовать $ 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)

Vipul Pandey 10.12.2018 10:29
0
2
398
0

Другие вопросы по теме