Java Json记录列表
我有一个json记录列表,例如:Java Json记录列表,java,json,spring-boot,Java,Json,Spring Boot,我有一个json记录列表,例如: [{“age”:27,”lastname”:”Robert “,”firstName”:”Rob”,”company”:”abc”}, {“age”:27,”lastname”:”Ashok “,”firstName”:”Bob”,”company”:”def”}, {“age”:27,”lastname”:”murali“,”firstName”:”Got”,”company”,”Ghori”}] 写一个以lastName为参数的方法,根据这个输入,我只
[{“age”:27,”lastname”:”Robert “,”firstName”:”Rob”,”company”:”abc”},
{“age”:27,”lastname”:”Ashok “,”firstName”:”Bob”,”company”:”def”},
{“age”:27,”lastname”:”murali“,”firstName”:”Got”,”company”,”Ghori”}]
写一个以lastName为参数的方法,根据这个输入,我只需要得到那个特定的记录并显示它您的问题没有得到很好的解释,您可以在将字符串更正为真正的json内容后尝试这个解决方案 使用ObjectMapper,您可以读取字符串以将其转换为ArrayNode
public static void main(String[] args) throws IOException {
String json= "[\n" +
" {\n" +
" \"age\":27,\n" +
" \"lastname\":\"Robert \",\n" +
" \"firstName\":\"Rob\",\n" +
" \"company\":\"abc\"\n" +
" },\n" +
" {\n" +
" \"age\":27,\n" +
" \"lastname\":\"Ashok \",\n" +
" \"firstName\":\"Bob\",\n" +
" \"company\":\"def\"\n" +
" },\n" +
" {\n" +
" \"age\":27,\n" +
" \"lastname\":\"murali\",\n" +
" \"firstName\":\"Got\",\n" +
" \"company\":\"\"\n" +
" }\n" +
"]";
// example with murali
getLine(json, "murali");
}
private static String getLine(String json, String lastName) throws IOException {
ArrayNode rootNode = (ArrayNode) new ObjectMapper().readTree(json);
for(JsonNode jsonNode : rootNode) {
ObjectNode node = (ObjectNode)jsonNode;
String lastNameValue = node.get("lastname").textValue();
if(lastName.equals(lastNameValue)){
return jsonNode.toString();
}
}
return null;
}
此示例的结果是:
{年龄:27岁,姓氏:穆拉里,姓氏:戈特,公司:}请清楚地说明你面临的问题,你尝试了什么,还有一个您正在寻求帮助的特定问题。我尝试根据姓氏获取一条记录,但出现了错误,如无法转换到JSONArray我使用了JSONObject和JSONArray,它们对我不起作用。请在问题中发布代码和完整错误。我们帮不了你,你没给我们看的代码。