gpt4 book ai didi

java - 如何使用 FlexJSON 序列化 Map>

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:30:18 25 4
gpt4 key购买 nike

我有一个对象,我想将其序列化为 JSON。该对象是带有特定对象列表的 map 。这看起来很像:

Map<String, List<Object>> map = new Map<String, List<Object>>();

我正在使用 FlexJSON。我只能使用 flexjson.JSONSerializer .这是我的尝试:

JSONSerializer jsonSerializer = new JSONSerializer();
// jsonSerializer.include("map");
// jsonSerializer.include("map.myList.object");
jsonSerializer.transform(new MapTransformer(), "map");
jsonSerializer.exclude("*.class");

如您所见,我正在尝试使用 Transformer类,但我没有成功。如我所想,如果我的 List<Object> 注释行将起作用有自己的名字,例如 myList .但它没有自己的名字,因为它是values我的 map 。

如何使用 FlexJSON 将此类对象序列化为 JSON?

最佳答案

Quoi 是正确的,很可能是您想要使用的答案。但是,为了了解更多有关其工作原理的信息,您可以这样做:

new JSONSerializer().include("values.values").serialize( myMap );

map 和列表是容器,对其中包含的元素有特殊的表达方式。当您想讨论容器值的路径时,您可以在路径中使用“值”表达式。 Map的两个特殊表达式“keys”和“values”。其他集合具有“值”。

另一种选择是像这样使用通配符:

   new JSONSerializer().include("values.*").serialize( myMap );

您还可以看到 Quoi 的答案中使用了通配符来排除类属性。

关于java - 如何使用 FlexJSON 序列化 Map<String, List<Object>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12582752/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com