jackson中不区分大小写的JsonNode
我需要反序列化JSON对象并以不区分大小写的方式访问字段。 例:
String s = "{\"FOO\": 123}"; ObjectMapper mapper = new ObjectMapper(); JsonNode node = mapper.readTree(s); node.get("foo"); // this should return the "FOO" field
这需要getFieldNames()
,因此调用getFieldNames()
并降低结果并不是一个好的解决方案。
没有自动化方法,但您可以通过创建自定义JsonNodeFactory来创建自定义ObjectNode – 然后您可以覆盖用于添加和访问条目的方法。