問題:
Fasterxml は、セッターで抽象化を使用するときにオブジェクトを構築できます。以下のコードを参照してください
Can not construct instance of CarState, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information
コード:
@MappedSuperclass
@Inheritance(strategy= InheritanceType.SINGLE_TABLE)
public interface IState {}
public class BusState implements IState{}
//register subtype in mapper
mapper.registerSubtypes(BusState .class);
public interface Car {
public void setState(IState state);
}
@Entity
public class Bus implements Car {
private BusState state;
public void getState(BusState state) { //Seems fasterxml doesn't use this method, instead it use Car.setState
this.state = state;
}
}
クラスで 2 つの異なるメソッドを作成できます。1Bus
つは設定用IState
、もう 1 つはBusState
. しかし、それは醜く見えます。
質問:
Bus
-object を正しく構築するように fasterxml を作成するにはどうすればよいですか?