【发布时间】:2014-04-03 06:34:53
【问题描述】:
我试图在 Java utils 中实现 Map 接口,但我会将数据存储在 Mongo 而不是内存中。为了类型安全,我还在其中包含了泛型。我想处理所有可能的类型 - 包装类、自定义类,这些类又可以在其中包含多个自定义类,并且还可能支持以下内容:
Map<String, Set<Map<String, SampleObject>>> or Map<String, Set<SampleObject>>
我正在使用 GSON 序列化 JSON 中的键和值并存储它们,并在获取时反序列化它们并返回。这适用于简单的泛型类型参数。但是当它嵌套时,我不知道它会如何工作。序列化仍然有效,因为我手头有对象。但是我如何知道反序列化时要返回哪个类?
还有什么我可以做的吗?
【问题讨论】:
-
你的意思是
SampleObject可以是任何模型类吗? -
@TechSpellBound:是的,
SampleObject可以是任何 POJO。 -
@BrianRoach:就像我提到的,我正在使用 GSON 进行序列化和反序列化。但是当我做这样的事情时:
gson.fromJson(jsonString, SampleObject.class),我需要知道我正在尝试解析SampleObject而不是AnotherSampleObject的实例。另外,如果它是 JSON 数组,我需要使用SampleObject[].class。 -
为什么对这个问题投反对票?请详细说明!
标签: java json generics serialization gson