#java #json #polymorphism
Вопрос:
Этот класс используется для создания объекта Java из входных данных JSON. Я хочу создать статический объект для своего модульного теста. Вот мой класс :
@Data @NoArgsConstructor @JsonTypeInfo( use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = "type") @JsonSubTypes({ @JsonSubTypes.Type(value = FullScan.class, name = "FullScan"), @JsonSubTypes.Type(value = PartitionBased.class, name = "PartitionBased") }) public class BatchSpec { @NonNull private String type; }
Я хочу создать объект в своем тестовом классе с типом=»FullScan».
Вот как я пытаюсь это сделать :
private static final BatchSpec batchSpec = new BatchSpec();
Но он не принимает никаких параметров.
Что я хочу сделать, так это создать объект для приведенного ниже json :
"batch": {"type": "FullScan"}
Ответ №1:
Попробуй это
BatchSpec batchSpec = new BatchSpec(); batchSpec.setType("FullScan"); JobConfig jobConfig = new JobConfig("Something",batchSpec);