Well, what you obtain when you .get("test")
is a JsonNode
and it happens to be a TextNode
; when you .toString()
it, it will return the string representation of that TextNode
, which is why you obtain that result.
What you want is to:
.get("test").textValue();
which will return the actual content of the JSON String itself (with everything unescaped and so on).
Note that this will return null if the JsonNode
is not a TextNode
.