Реализация подсчета вложенных массивов MongoDB в Java

#java #mongodb

#java #mongodb

Вопрос:

У меня есть коллекция MongoDB со следующей структурой

 _id:"123"
dealnum:"332"
contact: {
  Phones: {
    Home:123
    Work:332
  }
}
 

Как мне подсчитать количество элементов в Phone.Мне нужно реализовать это на Java. Phone — это массив из 2 элементов. Я использовал unwind, project и до сих пор не вижу правильных результатов.

Комментарии:

1. Как вы опубликовали, Phones поле не является массивом — это вложенный документ (или встроенный документ). Массив определяется с элементами, заключенными в квадратные скобки ( [ 1, 34, 27 ] , например).

Ответ №1:

Если это проект maven, используйте приведенную ниже зависимость и создайте

    <groupId>com.google.code.gson</groupId> 

   <artifactId>gson</artifactId> 

   <version>2.6.2</version> 
 

Создайте объект java, представляющий приведенный выше json

И диалог json с java может быть следующим

Gson gson = новый Gson();

     // Converting json to object 

    // first parameter should be prpreocessed json 

    // and second should be mapping class 

    Organisation organisation 

        = gson.fromJson(OrganisationJson, 

                        Organisation.class);