2017-06-06 10 views
1

私はSpring FrameworkのSpringブートライブラリを使用してRESTサービスを行っています。 サービスからの応答がJSONとして返されています。問題は、親クラスを使用してリクエストの結果として送信されるすべてのオブジェクトを格納していて、レスポンスがJSON配列に名前なしで送信されていることです。Spring Responsebody、jsonのネーミングリストオブジェクト

これは私のテストのいずれかの出力です:

success: true, 
message: null, 
data: [ 
{ }, 
{ 
vehicleBatteryId: 3, 
modelTypeId: 3, 
cycleCount: -9640, 
currentCapacity: -9640, 
manufactureDate: 414037682000, 
manufacturerId: 10, 
modeTypeCode: 461271880, 
partStatus: 215692740, 
lastMaintenanceDate: 428880743000 
}, 
{ 
vehicleBmsId: 3, 
bmsModelId: 5, 
manufactureDate: 942436247000, 
manufacturerId: 4, 
lastMaintenanceDate: 437823118000, 
partStatus: 477293493, 
replaceDate: 179716409000, 
replaceDistance: 4783810 
}... 

そして、これは私が取得しようとしている結果である:

success: true, 
message: null, 
data: { 
Property1:{ }, 
Property2:{ 
vehicleBatteryId: 3, 
modelTypeId: 3, 
cycleCount: -9640, 
currentCapacity: -9640, 
manufactureDate: 414037682000, 
manufacturerId: 10, 
modeTypeCode: 461271880, 
partStatus: 215692740, 
lastMaintenanceDate: 428880743000 
},... 

これは、親クラスです。その応答の詳細とは無関係に、私のサービスが作成するすべての応答に使用できるようにしたいです。誰でもどんなアイデアがありますか?私がSpringがjsonに変換するためにJacksonを使用していると言うことができる限り、私は自分が現在提供しているjsonの表示関数でできることを探っています。

+1

あなたは明確にこのラインを説明することができ、私はすべての応答のための私のサービスを、それを使用することができるようにしたいが、私の場合は関係なく、その応答 –

+0

の詳細を作成し、私は私のコントローラ上RestController'注釈@ 'を使用し、返された '親オブジェクト'はそのコントローラを形成します。彼らは全く罰金を科してクラスのすべての名前を与えていました。 –

+0

@Rahul私は、さまざまなリターンタイプを表す多くの異なるモデルを用意しています。例:車両と企業。 VehicleクラスかCompanyクラスかにかかわらず、それらを「MasterResponse」に追加したいと思います。 –

答えて

0

Jacksonは[{...}、{...}、...]としてシリアル化するArrayListを使用しています データ用にマップ(つまりHashMap <>)を使用できますが、インデックスを適切に維持するために、カスタムの "push()"またはadd()関数を作成します。すなわちProperty1。データ:

のHashMapオブジェクトをとしてシリアル化ウィル{ "インデックス-1":{...} "インデックス-2":{...} ...}

簡単な例のためにあなたコード:

private Map<String, Object> data; 
    int nextIndex = 1; 

    private void init(){ 
     this.data = new HashMap<String, Object>(); 
    } 

    public void addModel(Object newModel){ 
      this.data.add("Property" + this.nextIndex, newModel); 
      this.nextIndex++; 
    } 
+0

それは簡単だった、完璧に働いた、ありがとう –

関連する問題