我正在使用Google Directions API来获取两点之间的路线。目前,我只是向HTTP端点发送HTTP请求,如下所示:
URL url;
URLConnection request;
try {
url = new URL(
"https://maps.googleapis.com/maps/api/directions/json" +
"?origin=Alzenau" +
"&destination=Dortmund&" +
"key=xxxxxxxxxxxx"
);
request = url.openConnection();
request.connect();
// Convert to a JSON object
JsonParser jp = new JsonParser();
JsonElement root = jp.parse(new InputStreamReader((InputStream) request.getContent()));
JsonObject rootobj = root.getAsJsonObject();
ConvertRoutes(rootobj);
} catch (IOException ex) {
ex.printStackTrace();
}
但是,有一个Google依赖项可以用来实现相同的目的:https://mvnrepository.com/artifact/com.google.maps/google-maps-services/0.9.3
此依赖项包含所有Google Maps API(方向,地方等)
我的问题:当我仅使用Google的一小部分功能时,使用它的依赖关系有意义吗? Java会加载整个依赖关系,还是仅加载我实际使用的部分?
谢谢!
答案 0 :(得分:1)
这不是一个明确的是/否决定。
如果仅调用一个http接口,并且您的应用程序运行良好(并且速度足够快),则没有真正的理由对其进行更改。
使用Java API可能会使您的代码更小(并且具有类型安全性),但是您需要检查该API的依赖关系树。如果它包含您的依赖关系树中已经具有的依赖关系,则由于相同工件的不同版本,您可能会遇到冲突。