2017-02-07 5 views
0

からオブジェクトを除外するシリアライズジャクソンは、いくつかの親と子の関係(サンプルデータ)を持っているJSON以下のリスト

  • "ID":それは "PARENTID" を持っているので、1050は子でありますそれは "PARENTID" を持っているので、親は次のとおりです。ヌル

マイrequirem

 { 
     "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 
     } 

私は膨大なデータを持っている。このようこれらの子の情報が親のサブ情報に来てそれらのレコードは親ではないので、Spring MVCの+休止状態を使用してIAMの

 { 
     "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 
     } 

、:ENTはPARENTIDは、いくつかの値(1051年「PARENTID」)を持つ親位置から子レコードを削除する必要があります基準API +ジャクソンライブラリ だれも、直列化中にリストからオブジェクトを除外する最善の方法を教えてください。

+0

を見逃すことはありませんことを確認します事は、あり、どちらかあなたはあなたの全体のJSON配列またはTIのどれを行います。残念ながら、それを行う最善の方法は、すべてのリストをシリアル化し、不要なアイテムを削除することです。 – DamCx

+0

@DamCx、すべてのレコードを1つずつ繰り返す必要があるのですか? – Developer

+0

あなたはすべてのオブジェクトを1回の操作でserializeすることができます。 – DamCx

答えて

0

私たちが@Developerと話したように、この問題に答える最善の方法は、ObjectMapperからJacksonまでのようないくつかのツールを使ってすべてのオブジェクトをシリアライズし、リストを構築したら、それを反復してあなたが保持したい要素。オブジェクトをシリアル化しながら、

もパフォーマンスワイズは、それが最高のものではないのですが、これはあなたがどんな欲しかったアイテム

関連する問題