– Start
点击此处观看本系列配套视频。
除了 ObjectMapper 外,如果你不想创建和消息格式一样的对象模型,我们还可以使用 JsonNode 来访问 JSON 消息,下面是一个简单的例子。
package shangbo.jackson.demo19;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ObjectNode;
public class App {
public static void main(String[] args) throws Exception {
// 实例化 ObjectMapper 对象
ObjectMapper objectMapper = new ObjectMapper();
// json 消息
String json = "{\"firstname\":\"Bo\",\"lastname\":\"Shang\",\"age\":30}";
// 将 json 转成 JsonNode 对象
JsonNode rootNode = objectMapper.readTree(json);
// 得到节点值
JsonNode firstNameNode = rootNode.get("firstname");
System.out.println("firstname:" + firstNameNode.asText());
JsonNode ageNode = rootNode.get("age");
System.out.println("age:" + ageNode.asInt());
// 创建新节点
ObjectNode newNode = objectMapper.createObjectNode();
newNode.setAll((ObjectNode)rootNode);
newNode.put("hometown", "dalian");
// 将 JsonNode 对象转成 json
String newjson = objectMapper.writeValueAsString(newNode);
System.out.println(newjson);
}
}
– 更多参见:Jackson 精萃
– 声 明:转载请注明出处
– Last Updated on 2019-05-26
– Written by ShangBo on 2019-05-26
– End