Spring Boot получает подмножество вложенного массива из документа mongo [duplicate]

a ~ li {
    background: red
}

В css3 добавлен новый селектор, поэтому, если html выглядит так:

<ul>
  <li>
    <a>Some text</a>
  </li>
</ul>

Фактически вы можете воздействовать на родителя элемента «a», который является «li» «

0
задан marc_s 20 November 2016 в 22:47
поделиться

3 ответа

Используйте функциональность среза, как показано в Java Mongo, используя проекцию, как показано ниже.

Пример:

List<Entity> list = new ArrayList<Entity>();
        // Return the last 10 weeks data only
FindIterable<Document> list = db.getDBCollection("COLLECTION").find()
                .projection(Projections.fields(Projections.slice("count", -10)));
MongoCursor<Document> doc = list.iterator();
while(doc.hasNext()){
    list.add(new Gson().fromJson(doc.next().toJson(), Entity.class));
}

Вышеприведенный запрос будет извлекать все документы типа Entity class и «поле» списка каждого документа класса Entity будет содержать только последние 10 записей.

1
ответ дан Arijeet Saha 19 August 2018 в 02:27
поделиться

Предоставление абстракции для оператора $slice в Query по-прежнему остается открытым. Пожалуйста, проголосуйте за DATAMONGO-1230 и помогите нам расставить приоритеты.

Пока вы все еще можете вернуться к использованию BasicQuery.

String qry = "{ \"_id\" : \"record-id\"}";
String fields = "{\"fields\": { \"$slice\": 2} }";

BasicQuery query = new BasicQuery(qry, fields);
1
ответ дан Christoph Strobl 19 August 2018 в 02:27
поделиться

Я нашел в модульном тестовом файле ( DATAMONGO-1457 ) способ использования среза. Что-то вроде этого.

newAggregation(
    UserWithLikes.class, 
    match(new Criteria()),
    project().and("likes").slice(2)
);
0
ответ дан Long Nguyen 19 August 2018 в 02:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: