2017-02-07 16 views
0

После JSON у некоторых родительских и отношений ребенка (данные выборки)Джексон сериализации исключить объект из списка

  • "ID": 1050 является ребенок, потому что он имеет "ParentID": 1051
  • "ID": 1051 является родителем, потому что он имеет "ParentID": нулевой

Как это у меня есть огромные данные

 { 
     "statusCode": 200, 
     "statusMessage": "Success", 
     "dataCount": 0, 
     "data": null, 
     "dataList": [ 
      { 
      "id": 1050, 
      "parentId": 1051, 
      "questionInfo": { 
       "id": 1050, 
       "description": "--", 
       "question": "--", 
       "answersInfo": [ 
       { 
        "id": 2041, 
        "description": "--", 
        "isCorrect": "--", 
        "name": "--", 
        "subQuestions": [] 
       }, 
       { 
        "id": 2040, 
        "description": "--", 
        "isCorrect": "--", 
        "name": "--", 
        "subQuestions": [] 
       } 
       ] 
      } 
      }, 
      { 
      "id": 1051, 
      "parentId": null, 
      "questionInfo": { 
       "id": 1051, 
       "description": "--", 
       "question": "--", 
       "answersInfo": [ 
       { 
        "id": 2024, 
        "description": "--", 
        "isCorrect": "--", 
        "name": "--", 
        "subQuestions": [] 
       }, 
       { 
        "id": 2023, 
        "description": "--", 
        "isCorrect": "--", 
        "name": "--", 
        "subQuestions": [ 
        { 
         "id": 1050, 
         "parentId": 1051, 
         "questionInfo": { 
         "id": 1050, 
         "description": "--", 
         "question": "--", 
         "answersInfo": [ 
          { 
          "id": 2041, 
          "description": "--", 
          "isCorrect": "--", 
          "name": "--", 
          "subQuestions": [] 
          }, 
          { 
          "id": 2040, 
          "description": "--", 
          "isCorrect": "--", 
          "name": "--", 
          "subQuestions": [] 
          } 
         ] 
         } 
        } 
        ] 
       } 
       ] 
      } 
      }, 
      { 
      "-------": "-------" 
      } 
     ], 
     "dataMap": null 
     } 

Мой requirem ЛОР это необходимо удалить дочерние записи из родительской позиции, где ParentID имеет некоторое значение («ParentID»: 1051), потому что это ребенок информация приходит в родительском к югу информации эти записи не являются родители

 { 
     "statusCode": 200, 
     "statusMessage": "Success", 
     "dataCount": 0, 
     "data": null, 
     "dataList": [ 
      { 
      "id": 1051, 
      "parentId": null, 
      "questionInfo": { 
       "id": 1051, 
       "description": "--", 
       "question": "--", 
       "answersInfo": [ 
       { 
        "id": 2024, 
        "description": "--", 
        "isCorrect": "--", 
        "name": "--", 
        "subQuestions": [] 
       }, 
       { 
        "id": 2023, 
        "description": "--", 
        "isCorrect": "--", 
        "name": "--", 
        "subQuestions": [ 
        { 
         "id": 1050, 
         "parentId": 1051, 
         "questionInfo": { 
         "id": 1050, 
         "description": "--", 
         "question": "--", 
         "answersInfo": [ 
          { 
          "id": 2041, 
          "description": "--", 
          "isCorrect": "--", 
          "name": "--", 
          "subQuestions": [] 
          }, 
          { 
          "id": 2040, 
          "description": "--", 
          "isCorrect": "--", 
          "name": "--", 
          "subQuestions": [] 
          } 
         ] 
         } 
        } 
        ] 
       } 
       ] 
      } 
      }, 
      { 
      "-------": "-------" 
      } 
     ], 
     "dataMap": null 
     } 

Iam использованием Spring MVC + Hibernate критерии API + библиотека Джексона Итак, может ли кто-нибудь сказать мне лучший способ исключить из списка список объектов (полный объект на основе некоторого условия)?

+0

Дело в том, в то время как сериализовать объекты, либо вы весь свой массив JSON или ни один из ти. Таким образом, лучший способ сделать это, к сожалению, - это сериализовать весь список, а затем удалить ненужные элементы. – DamCx

+0

@DamCx, вы имеете в виду необходимость перебора всех записей по одному? – Developer

+0

Вы сможете сериализовать все свои объекты за одну операцию, используя «ObjectMapper» от Jackson – DamCx

ответ

0

Как мы говорили с @Developer, лучший способ ответить на эту проблему будет сериализовать все объекты, используя какой-то инструмент, так же, как ObjectMapper от Jackson, и после того, как список будет построен, перебрать его иметь только элементы, которые вы хотите сохранить.

Perfomance-накрест, что это не самое лучшее, но это будет убедиться, что вы не пропустите ни требуемые товары

 Смежные вопросы

  • Нет связанных вопросов^_^