0
我有注释是这样的:ObjectMapper避免注释
@Valid
@NotNull
@JsonTypeResolver(com.rsqtechnologies.sioms.shared.JsonTypeResolver.class)
@JsonTypeInfo(
use = JsonTypeInfo.Id.NAME,
include = JsonTypeInfo.As.PROPERTY,
property = "type",
visible = true)
@JsonSubTypes({
@JsonSubTypes.Type(value = HandballPlayerTO.class, name = "handballPlayerTO"),
@JsonSubTypes.Type(value = FootballPlayerTO.class, name = "footballPlayerTO")
})
而且想使用objectMapper期间避免@JsonTypeResolver。
我已经试过这样:
ObjectMapper mapper = new ObjectMapper();
JacksonAnnotationIntrospector ignoreJsonTypeInfoIntrospector = new JacksonAnnotationIntrospector() {
@Override
protected TypeResolverBuilder<?> _findTypeResolver(
MapperConfig<?> config, Annotated ann, JavaType baseType) {
if (!ann.hasAnnotation(JsonTypeResolver.class)) {
return super._findTypeResolver(config, ann, baseType);
}
return null;
}
};
mapper.setAnnotationIntrospector(ignoreJsonTypeInfoIntrospector);
但正如我注意到它删除了旁边显示的所有注释。
真棒多数民众赞成正是我一直在寻找。 – MrNetroful