通过json响应Java中的Google Maps API获取响应

时间:2017-01-17 16:35:20

标签: java json api maps

我需要开发一个程序,我必须计算行驶距离和时间。获取Google Maps API的请求有效,我得到了非常大的响应。现在我想从这个响应中提取我需要的数据。响应在json中,我制作的程序是用Java编写的。我不知道这样做。我试图将整个响应放在一个字符串中,然后搜索我需要的数据,比如“距离”,并提取之后的几个字符。问题是,如果前面的内容发生了变化,那么它就会出现在巨大字符串中的不同索引处。

响应是这样的(只有一点点大事)

"copyrights" : "Kaartgegevens ©2017 GeoBasis-DE/BKG (©2009), Google",
     "legs" : [
        {
           "distance" : {
              "text" : "229 km",
              "value" : 229411
           },
           "duration" : {
              "text" : "2 uur 20 min.",
              "value" : 8417
           },

如何轻松提取“距离”和“持续时间”的值?

1 个答案:

答案 0 :(得分:0)

基本上您要做的是将JSON序列化和反序列化为适当的Java对象。您可以使用像Jackson或GSON这样的框架将JSON-String转换为POJO。

这对你也有帮助:

How to serialize and deserialize a JSON object from Google geocode using Java

Converting JSON to Java

http://thegeekyland.blogspot.de/2015/11/serializing-and-deserializing-json-from.html

我非常确定Google有自己的API可以在内部映射JSON,尽管我还没有使用它。您可以在此处找到更多信息:

https://developers.google.com/maps/web-services/?hl=de

希望这有帮助!