我想让所有枚举对象都大写。如何使其不区分大小写?
HTTP 主体JsonNode
,然后节点到类对象:
JsonNode asJson = request().body().asJson();
WhatsappIncomingMessageVO requestVO = JsonParserUtils.fromJson(asJson, WhatsappIncomingMessageVO.class);
Run Code Online (Sandbox Code Playgroud)
JSON 具有小写字符串“location”,我想将其与以下枚举的 LOCATION 进行映射,该类包含一个枚举,即:
public enum WhatsAppMessageType {
TEMPLATE("TEMPLATE"),
TEXT("TEXT"),
IMAGE("image"),
VIDEO("video"),
AUDIO("audio"),
@JsonProperty("json")
LOCATION("location");
Run Code Online (Sandbox Code Playgroud)
小智 12
如果您使用杰克逊......我想是的,有多种解决方案
@JsonAlias({"location", "LOCATION", "Location"})
Run Code Online (Sandbox Code Playgroud)
使用 ,JsonDeserializer
您可以实现任何您想要的逻辑。
@JsonFormat(with = JsonFormat.Feature.ACCEPT_CASE_INSENSITIVE_PROPERTIES)
Run Code Online (Sandbox Code Playgroud)
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true);
Run Code Online (Sandbox Code Playgroud)