杰克逊 - jsonnode的马歇尔字符串
最后修改:2019年12月23日
1.概述
这个快速的教程将显示如何使用jackson 2将JSON字符串转换为ajsonnode.(com.fasterxml.jackson.databind.jsonnode.)。
如果你想深入挖掘和学习你可以用杰克逊2做的其他很酷的东西- 前往主要的杰克逊教程。
2.快速解析
非常简单,解析JSON字符串,我们只需要一个ObjectMapper.:
@Test公共void当ParsingjshstringIntojsonnode_thencorrect()抛出jsonparseexception,ioException {string jsonstring =“{”k1“:”v1“,”k2“:”v2“}”;objectMapper映射器= new objectMapper();jsonnode amectyobj = mapper.readtree(jsonstring);assertnotnull(actualobj);}
3.低水平解析
如果,出于某种原因,您需要走低比这,以下例子暴露了jsonparser.负责字符串的实际解析:
@test public void gendusinglowlevelapi_whenparsingjshstringintojsonnode_thencorrect()抛出jsonparseexception,ioException {String jsonstring =“{”k1“:”v1“,”k2“:”v2“}”;objectMapper映射器= new objectMapper();jsonfactory factory = mapper.getfactory();jsonparser parser = factory.createparser(jsonstring);jsonnode amectyobj = mapper.readtree(解析器);assertnotnull(actualobj);}
4.使用jsonnode.
json被解析为jsonnode对象后,我们可以与杰克逊json树模型一起工作:
@test public viventhejsonnode_whenretrievingdatafromid_thengorrect()抛出jsonparseexception,ioException {String jsonstring =“{”k1“:”v1“,”k2“:”v2“}”;objectMapper映射器= new objectMapper();jsonnode amectyobj = mapper.readtree(jsonstring);// jsonnode jsonnode1 = amecticobj.get(“k1”);asserthat(jsonnode1.textValue(),等于(“v1”));}
结论
本文说明了如何将JSON字符串解析为杰克逊jsonnode.模型启用JSON对象的结构化处理。
实现所有这些示例和代码片段可以找到我的github项目- 这是一个基于Eclipse的项目,因此应该易于导入和运行。