如何删除这个 Jason 响应(时间戳、状态、错误、路径)?我只想获取对象数据[重复]
Posted
技术标签:
【中文标题】如何删除这个 Jason 响应(时间戳、状态、错误、路径)?我只想获取对象数据[重复]【英文标题】:How to remove this Jason response(timestamp, status, error, path)? I just want to get object data [duplicate] 【发布时间】:2021-11-01 07:36:45 【问题描述】:“课程编号”:23, "courseName": "科学", “课程代码”:“SC100”, "courseDescription": "线性代数", "courseDuration": "6 m", “创建日期”:1630438611000, “更新日期”:空, “删除图像”:[] “时间戳”:1630614081354, “状态”:200, “错误”:“确定”, “路径”:“/api/editcourse/23”
【问题讨论】:
【参考方案1】:我会使用 Jackson Project 来完成该任务。
备选方案 1
由于您在同一个 Json 中有 2 个值并且您只想要第一个,因此您可以使用来自 ObjectMapper
类的 readTree(String)
方法。它将跳过第二个值。
ObjectMapper mapper = new ObjectMapper();
JsonNode jsonNode = mapper.readTree(jsonResponse);
System.out.println(jsonNode.toPrettyString());
输出:
"courseId" : 23,
"courseName" : "science",
"courseCode" : "SC100",
"courseDescription" : "linear algebra",
"courseDuration" : "6 m",
"createdDate" : 1630438611000,
"updatedDate" : null,
"removeImages" : [ ]
备选方案 2
使用readValues(JsonParser, Class<T>)
方法,您可以读取所有值并进行迭代,只选择您需要的值。
ObjectMapper mapper = new ObjectMapper();
Iterator<?> iterator = mapper.readValues(new JsonFactory().createParser(jsonResponse), Map.class);
Object object = iterator.next();
System.out.println(object);
输出:
courseId=23, courseName=science, courseCode=SC100, courseDescription=linear algebra, courseDuration=6 m, createdDate=1630438611000, updatedDate=null, removeImages=[]
【讨论】:
谢谢@Oboe。这很有帮助。以上是关于如何删除这个 Jason 响应(时间戳、状态、错误、路径)?我只想获取对象数据[重复]的主要内容,如果未能解决你的问题,请参考以下文章