Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Json-区分具有相同属性的不同类_Java_Json_Serialization - Fatal编程技术网

Java Json-区分具有相同属性的不同类

Java Json-区分具有相同属性的不同类,java,json,serialization,Java,Json,Serialization,我目前面临以下问题: 假设我有一个用于过滤特定实体的抽象类A。 所以我有一个PassThroughFilter扩展a,它什么都不做(NIL元素)。通过decorator模式,我有了另一个抽象类a_Dec,它保存属性type。此外,我有B和C两个类,它们都扩展了A_Dec。它们使用类型处理各种事情,因此它们在逻辑上是不同的。 然后,示例过滤器可以是:C(type=XC,decorator=B(type=XB,decorator=A)) 不是我想创建一个JSON保存到当前过滤器。这很容易做到,但是

我目前面临以下问题: 假设我有一个用于过滤特定实体的抽象类
A
。 所以我有一个
PassThroughFilter
扩展
a
,它什么都不做(NIL元素)。通过decorator模式,我有了另一个抽象类
a_Dec
,它保存属性
type
。此外,我有
B
C
两个类,它们都扩展了
A_Dec
。它们使用
类型
处理各种事情,因此它们在逻辑上是不同的。 然后,示例过滤器可以是:
C(type=XC,decorator=B(type=XB,decorator=A))

不是我想创建一个JSON保存到当前过滤器。这很容易做到,但是 对于JSON:

{type=X, decorator={}}
其中,
{}
表示
A
我无法区分
B
C

一个简单的解决方法是创建一个具有类名称或其他唯一名称的局部变量。但是有没有合适的方法来处理这个问题呢


提前谢谢你

尝试使用
Jackson
库中的
JsonTypeInfo
JsonSubTypes
注释。请参阅:,因为我没有使用Jackson,但Gson无法使用注释。但还是要谢谢你!如果您正在为
Gson
寻找解决方案,请查看,尤其是
TypeAwareListJsonAdapter
类。