POJO 对象列表有什么更好的

What would be better with POJO object list

我有一个 JSON 结构如下:

 {
  "bag" : {
    "descrition" : "my bag 1",
    "text" : 123456,
    "item" : {
      "-K5D9mi--s6jPWNwrNEu" : {
        "name" : "name item",
        "value" : 60
      },
      "-K5R3ugcTVFnNlAEAHus" : {
        "name" : "name item 2",
        "value" : 55
      }}}
 }

如果我制作我的 POJO class 如下:

    public class Item {
        String name;
        int value;
   }
   public class Bag {
      String descrition;
      String text;
      List<Item> item;
    }

当我用下面的代码反序列化对象时给出错误,参考对象列表"item":"JsonMappingException: Can not deserialize instance of java.util.ArrayList out of START_OBJECT token"

 Firebase ref = new Firebase("myAdressFirebase/bag/");
        ref.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                Bag bag = dataSnapshot.getValue(Bag.class);
            }
            @Override
            public void onCancelled(FirebaseError firebaseError) {
            }
        });

什么是最好的 POJO json 让我在一次调用中重新获得父对象 Firebase 及其子对象?

您不能在项目列表中序列化 object/hash 映射结构。没有地方放钥匙,例如 "-K5D9mi--s6jPWNwrNEu""-K5R3ugcTVFnNlAEAHus" ;-)。

自从我使用 Jackson 以来已经有很长时间了,但我相当确定您可以使用 Map<String, Item> 作为 class 中 item 属性的类型 Bag。即我希望 Jackson 提供一个从 JSON Object 到 Java Map<> 接口的转换器,反之亦然。