2012-03-01 17 views
0

私はJavaのGsonライブラリを使用してjSonにJavaオブジェクトをシリアル化しています。GSON配列からjsonにマッピングされた配列

ほとんどの場合、かなりうまくいきますが、マップされた配列としてjavascriptのコレクションにアクセスしたいので、それらをjson配列ではなくプロパティとして送信する必要があります。

var groups={"group1":[{"john":{"age":22,"sex":"male"}},{"patricia":{"age":32,"sex":"female"}}]} 

私はグループを行うことはできません[「GROUP1」] [「ジョン」]:例えば

は、私はそれにいくつかの人々を持っている...私はそれを送信する場合、グループを持っていると仮定することができます。 ..そして私は正しい人を見つけるために配列を反復する必要があります。

しかし、私がしなければ:

var groups={"group1":{"john":{"age":22,"sex":"male"},"patricia":{"age":32,"sex":"female"}}} 

が今私にできるグループ[ "GROUP1"] [ "ジョン"]。

この問題は、グループにPersonの配列があり、gsonがjsonにシリアル化すると、各人物を配列要素[{...で、グループ1のプロパティではなく、グループ。

gsonに、通常の配列の代わりにマップされた配列にシリアル化するように指示することができるかどうかを知りたいと思います。もしそうなら。

答えて

2

アレイを使用しない場合は、アレイを使用しないでください。

+0

作品完全

class ClassToSerialize { private HashMap<String, PersonInfo> group1 = new HashMap<String, PersonInfo>(); ... } class PersonInfo { private int age; private String sex; ... } 

HashMapへの鍵は、あなたの人の名前です):

あなたはJavaでMapを使用して変更した場合、それはあなたの第二の例にシリアル化する必要がある)...ありがとう –

関連する問題