私のプロジェクトでは、このようなものがあります
enum Species {
DOG, CAT
}
@JsonTypeInfo(
use = JsonTypeInfo.Id.NAME,
include = JsonTypeInfo.As.PROPERTY,
property = "type")
@JsonSubTypes({
@Type(value = Cat.class, name = "cat"),
@Type(value = Dog.class, name = "dog") })
class Animal {
Species species;
String name;
}
class Cat extends Animal {
Cat() {
species = Species.CAT;
}
...
}
class Dog extends Animal {
Dog() {
species = Species.DOG;
}
...
}
class Zoo {
Collection<Animal> animals;
}
動物園をjsonにシリアル化/逆シリアル化する必要があります。このガイドhttp://programmerbruce.blogspot.com/2011/05/deserialize-json-with-jackson-into.htmlに従いましたが 、問題なく機能しました。しかし、それは私が本当に必要としないjsonオブジェクトに冗長なプロパティ「type」を追加します。pojoのspeciesプロパティを使用するだけで、コレクションを適切にシリアル化/逆シリアル化する方法はありますか?