In this case it seems to be just a normal JSON propety.
You can grab it by using the @JsonProperty
annotation in your class:
public YourJacksonClass {
@JsonProperty("@displayType")
private String displayType;
@JsonProperty("@type")
private String type;
@JsonProperty("#text")
private String text;
}
Or, if you are using the readTree
method which returns a JsonNode
, just access it normally:
JsonNode node = mapper.readTree(...);
String type = node.get("segmentid").get("mot").get("@type");
It is also common to use '@'-prefixed properties when it is necessary to serialize type info together with the object.
@JsonTypeInfo(use=JsonTypeInfo.Id.CLASS, include=JsonTypeInfo.As.PROPERTY, property="@type")
The read type, "BLT"
in your case, can then be transformed into an actual type when using a TypeIdResolver
in your ObjectMapper
.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…