我的JSON流每次都可以不同。例如,某些时候它可以包含“歌曲”字段,有时则不包括。
我得到这个字段值asText?如果未定义,如何告诉Jackson将此值作为空字符串获取?
实施例
"Content": "MusicContent",
"Song": "Track_1",
如果尝试node.get(“Song”)。asText(),它将给出“Track_1”
"Content": "MusicContent",
现在,如果我尝试获取node.get(“Song”),它会给出空指针异常。我想在调用asText()时得到一个空字符串。
我该怎么做?
由于
答案 0 :(得分:0)
您可以在调用节点上的asText()之前检查null。我可能会这样做:
if (node.get("Song") != null){
myString = node.get("Song").asText();
} else {
myString = "";
}
或者像这样花哨的方式:
myString = ((node.get("Song")!=null) ? node.get("Song").asText() : "");