如何使用Flexjson JSONDeserializer



我有一个字符串:

 [{"product_id":"2","name":'stack"'},{"product_id":"2","name":"overflow"}]"

我如何使用Flexjson的JSONDeserializer从上述字符串中获得所有product_id ?

我有一个叫做productinformation的类,它有像product_idname这样的字段。

您可以使用JSONDeserializer.use()方法来告诉它如何反序列化数组和数组中的每个对象,在本例中是ProductInformation类。product_id属性与flexjson期望的标准命名不匹配,所以你在对象上的属性需要在它们里面有一个下划线。

String products= "[{"product_id": "123","name":"stack"},{"product_id": "456","name":"overflow"}]";
List<ProductInformation> productInfoList = new JSONDeserializer<List<ProductInformation> >()
    .use(null, ArrayList.class)
    .use("values",ProductInformation.class)
    .deserialize(products);
for(ProductInformation productInformation : productInfoList){
    System.out.println(productInformation.getProduct_id();
}

文档的反序列化部分中的"没有辅助轮的反序列化"一节详细介绍了JSON字符串中不包含类型信息时需要考虑的其他情况。

相关内容

  • 没有找到相关文章

最新更新