Java JSON4S&x2B;Jackson不会序列化超类的属性
我在scala项目中使用json4s和jackson序列化程序。我的传输对象是在常规Java库中定义的。我还使用Lombok生成构造函数/getter/setter/等等。它们如下所示:Java JSON4S&x2B;Jackson不会序列化超类的属性,java,scala,jackson,lombok,json4s,Java,Scala,Jackson,Lombok,Json4s,我在scala项目中使用json4s和jackson序列化程序。我的传输对象是在常规Java库中定义的。我还使用Lombok生成构造函数/getter/setter/等等。它们如下所示: @Data public abstract class Identified { private Long id; } @Data public class Car extends Identified { private Integer maxSpeed; } 问题是汽车的json缺少超类
@Data
public abstract class Identified {
private Long id;
}
@Data
public class Car extends Identified {
private Integer maxSpeed;
}
问题是汽车的json缺少超类的id属性。看起来是这样的:
{
"maxSpeed":null
}
在scala中,我定义了这个隐式
override implicit def json4sJacksonFormats: Formats = DefaultFormats
我经常在常规Java项目中使用Jackson,从未遇到过这个问题。有什么想法吗?你忘了
吗?我想它与龙目舞无关,因为它只创建了你的getter和setter,而Jackson可能直接处理字段。在这个例子中,这是一个输入错误。已修复。您的抽象类中的类型名称丢失,并且汽车没有扩展抽象类。Roel,抱歉。。把上一次编辑搞砸了。这次再检查一遍。这不是问题所在(当然,在这种情况下甚至不会编译)。