javascript – 在不使用Java中的POJO类的情况下解析不同的JSON响应
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 在不使用Java中的POJO类的情况下解析不同的JSON响应,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1465字,纯文字阅读大概需要3分钟。
内容图文
我在Java中解析来自REST API的JSON响应,但我不想为每个响应创建一个Java类(POJO)(响应具有不同的数据结构和字段). Java中是否有一个更通用的JSON解析器,类似于JavaScript的直接语法?
下面的JSON只是众多REST端点中的一个的结果
{
"f1" : "volume",
"f2" : "gender",
"f3" : "days",
"f4" : [{
"id" : "F",
"name" : "female",
"values" : [{
"name" : "September",
"value" : 12
}
]
}, {
"id" : "M",
"name" : "male",
"values" : [{
"name" : "September",
"value" : 11
}
]
}
]
}
在JavaScript中,要访问女性的值:
jsonRoot.f4[0].values[0].value
这比创建大量Java类更整洁.您能否提出类似的建议或避免创建许多POJO的方法?
解决方法:
如果您导入了com.google.gson的jar.您可以获得如下值:
String str="{" +
" \"f1\" : \"volume\"," +
" \"f2\" : \"gender\"," +
" \"f3\" : \"days\"," +
" \"f4\" : [{" +
" \"id\" : \"F\"," +
" \"name\" : \"female\"," +
" \"values\" : [{" +
" \"name\" : \"September\"," +
" \"value\" : 12" +
" }" +
" ]" +
" }, {" +
" \"id\" : \"M\"," +
" \"name\" : \"male\"," +
" \"values\" : [{" +
" \"name\" : \"September\"," +
" \"value\" : 11" +
" }" +
" ]" +
" }" +
" ]" +
"}";
JsonParser parser=new JsonParser();
JsonObject object=(JsonObject)parser.parse(str);
String value=object.get("f4").getAsJsonArray().get(0).getAsJsonObject()
.get("values").getAsJsonArray().get(0).getAsJsonObject()
.get("value").getAsString();
内容总结
以上是互联网集市为您收集整理的javascript – 在不使用Java中的POJO类的情况下解析不同的JSON响应全部内容,希望文章能够帮你解决javascript – 在不使用Java中的POJO类的情况下解析不同的JSON响应所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。