请帮我写一下这个Json结果的POJO类。我尝试了很多,但它对我不起作用。这是结果返回表格google maps api
{
"results" : [
{
"address_components" : [
{
"long_name" : "Salem - Kochi - Kanyakumari Highway",
"short_name" : "National Highway 47",
"types" : [ "route" ]
},
{
"long_name" : "Thampanoor",
"short_name" : "Thampanoor",
"types" : [ "sublocality_level_1", "sublocality", "political" ]
},
{
"long_name" : "Thiruvananthapuram",
"short_name" : "TVM",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Thiruvananthapuram",
"short_name" : "TVM",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Kerala",
"short_name" : "KL",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "India",
"short_name" : "IN",
"types" : [ "country", "political" ]
},
{
"long_name" : "695014",
"short_name" : "695014",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Salem - Kochi - Kanyakumari Highway, Thampanoor, Thiruvananthapuram, Kerala 695014, India",
提前致谢
答案 0 :(得分:2)
您可以使用某些工具/网站从JSON生成POJO,其中一个网站是:http://www.jsonschema2pojo.org/。在这个网站上,您只需要粘贴您的JSON响应,它将生成所需的POJO类。它还支持GSON和Jackson等注释样式。
是一个懒惰而又富有成效的开发人员!
答案 1 :(得分:1)
如果对如何使用JSON创建POJO存在疑问,我建议您尝试使用此网站:http://www.jsonschema2pojo.org/
它输出一个适用于给定json类型的完整java类;
对于大多数情况,我建议您使用此配置(来自上面的网站):源类型:Json注释样式:无并且仅检查是否使用原语。
希望它有所帮助!
答案 2 :(得分:1)
我会这样做:
public class Poi {
@SerializedName("long_name")
private String longName;
@SerializedName("short_name")
private String shortName;
@SerializedName("types")
private String[] types;
}
然后就这样做
Gson gson = new Gson();
List<Poi> pois = new ArrayList<Poi>();
JSONObject result = new JSONObject(response);
JSONArray array = result.getJSONArray("results");
for(int i = 0; i < array.length(); i ++) {
pois.add(gson.fromJson(array.get(i).toString(), Poi.class);
}