Java-使用Jackson序列化抽象类

问题描述

我有两个要序列化为Json的java类

@JsonRootName(value = "ani")
public abstract class Animal {

private final String eat;

public Animal(String eat) {
   this.eat = eat;
}

}

public class Car extends Dog {

private final String eat;
private final String bark;

public Dog(String,eat,String bark) {
super(eat);
this.bark = bark;
}

}

Main.Java

Animal ani = new Dog("food","oof");
ObjectMapper mapper = new ObjectMapper();
mapper.enable(SerializationFeature.WRAP_ROOT_VALUE);
String result = mapper.writeValueAsstring();

但这是结果:

{"ani": {"eat":"food","bark":"oof"}

代替:

{"ani": {"eat":"food","dog": {"bark":"oof"}}

如何在JSON中包含“狗”对象?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)