我有一个如下的对象列表
List<ProductInfo>
我想用 flex json 序列化它,这样它就应该喜欢
[{"product_id":"2","name":'stack"'},{"product_id":"2","name":"overflow"}]"
为了将上述字符串反序列化为对象列表,我使用以下代码
final List<ProductInformation> productInformationList = new JSONDeserializer<List<ProductInformation>>().use(null, ArrayList.class)
.use("values", ProductInformation.class).deserialize(parameterValue);
为了将对象序列化为字符串,我正在这样做,但它不起作用......我遗漏了一些东西......
final String serializizedString = new JSONSerializer().serialize(productInformationList);
将对象序列化为字符串需要什么?
最佳答案
List<ProductInfo> ls = new JSONDeserializer<ArrayList<ProductInfo>>().use("values", ProductInfo.class).deserialize(s);
关注这个link或仔细阅读以下内容
map 和集合的重构路径列表。在以前的版本中,无法同时指定 Collection/Map 的具体顶部和其中包含的具体类。路径语言不够冗长。现在您可以指定具体集合和包含在其中的具体类。如果 person.friends 是指向 java.util.Map 的路径。例如,
new JSONDeserializer<Person>()
.use( "person.friends", HashMap.class )
.use("person.friends.keys", Relation.class )
.use( "person.friends.values", Person.class )
通过向路径 person.friends 添加“keys”和“values”,您可以指定实际的具体类以用于 Map 的键和值。对于集合,您可以简单地附加“值”来指定包含类。例如:
new JSONDeserializer<List<Person>>().use( "people", ArrayList.class ).use("people.values", Person.class )
关于java - 如何使用 flex json 序列化对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7122368/