Java 有没有办法映射对象中嵌套字段的jsonProperty?
我有两个类Car.java和Bus.javaJava 有没有办法映射对象中嵌套字段的jsonProperty?,java,json,spring,spring-boot,design-patterns,Java,Json,Spring,Spring Boot,Design Patterns,我有两个类Car.java和Bus.java Car.java private Property property; java类具有数字和颜色 Property.java private String number; private String colour; 根据从何处调用,Car.java或Bus.java,我希望属性字段在输出json中分别称为carNumber、carcolor、busNumber
Car.java
private Property property;
java类具有数字和颜色
Property.java
private String number;
private String colour;
根据从何处调用,Car.java或Bus.java,我希望属性字段在输出json中分别称为carNumber、carcolor、busNumber和busColour
是否有任何方法可以使用单个属性类来实现这一点?
输出json应该是
“汽车”:{
“财产”:{
“卡号”:“num”
“carColor”:“蓝色”
}
}是的,您可以使用前缀为
的@JsonUnwrapped
// Car.Java
@JsonUnwrapped(prefix="car-")
private Property property;
它将生成JSON,如下所示(序列化后)
是的,您可以将@JsonUnwrapped
与前缀一起使用
// Car.Java
@JsonUnwrapped(prefix="car-")
private Property property;
它将生成JSON,如下所示(序列化后)
但这不会直接在父对象下生成车号和车名吗?我还是想把它放在房子里。Car{Property{“carNumber”:“carNum”,“carColor”:“blue”}正确,它将在外部生成。要在属性
对象中实现,必须使用自定义序列化程序和反序列化程序@含糊不清的。有一篇很好的文章你可以阅读,但是这篇文章不会直接在父对象下生成车号和车名吗?我还是想把它放在房子里。Car{Property{“carNumber”:“carNum”,“carColor”:“blue”}正确,它将在外部生成。要在属性
对象中实现,必须使用自定义序列化程序和反序列化程序@含糊不清的。有一篇非常好的文章你可以看
{ "car-name": "car name", "car-number" : "car number" }