java - 如何使用 flex json 序列化对象列表?

标签 java serialization

我有一个如下的对象列表

 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/

相关文章:

java - Hibernate hbm2ddl.auto 配置的可能值是什么,它们的作用是什么

java - NumberFormat setMaximumFractionDigits 方法

java - 实时文本输入解析android键盘

java - 无法读取在 C++ 中序列化的 Java 数据

java - Gson 没有序列化值

android - 如何将 Firebase DataSnapshot 对象保存到共享首选项?

java - 读取所有字符时是否有理由使用 BufferedReader 而不是 InputStreamReader?

java - 我们可以根据内容更改 log4j 日志记录级别吗

java - 使用 xstream 序列化一个类而不使用其扩展类

c# - 当对象是可序列化类中的字段时,转换在 ISerializable.GetObjectData 中创建的代理类型的异常