最近在做一个车辆调度的应用系统,需要根据车辆和站点的位置做相应的规划,因此要调用第三方的地图接口来获取经纬度等信息。这里,我选择的是高德平台,下面是一个从注册到简单使用的例子,可供大家学习参考,更深入的使用,大家可参考官网学习。

1、关于高德开放平台

高德开放平台的网址:http://lbs.amap.com/

注册账号:如果之前没有注册过账号,先注册账号。

2、创建应用

注册号账号,登录进去之后,进入个人控制台。控制台界面如下:

然后,依次点击应用管理-->我的应用-->创建新应用,如下图所示。

填写应用名称和类型,随便填:

点击创建之后,在“我的应用”里就会出现刚才创建的应用。

3、获取key

然后,点击右上角“添加”。

会出现下面的页面,根据你的应用类型选择就行了。对于普通的Java应用,选择“Web服务”就可以了。

填好相关信息,提交之后,在“我的个人网站”里就可以看到生成的key了:

四、代码根据地址获取经纬度

涉及相关maven依赖:

<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.24</version>
</dependency>
<dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId>
</dependency>

代码如下:

注意,一定要替换你自己的key,不要一上来就执行!

package ztt.map;import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.http.HttpEntity;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;import java.io.IOException;/*** @Description:* @Auther: ztt* @Date: 2020/4/22 15:48*/
public class GaoDeMapUtil {public static void main(String[] args) {// 地址名称String address = "上海交通大学徐汇校区";// 刚刚申请的key。一定要换成你自己的key!!!!!!!String key = "aaaaaaaaaaaaaaa";// 调用自己写好的封装方法JSONObject positionObj = getLngAndLat(address, key);String longitude = positionObj.getString("longitude");String latitude = positionObj.getString("latitude");System.out.println("经度:" + longitude);System.out.println("纬度:" + latitude);}/*** 根据地址查询经纬度** @param address* @param key* @return*/public static JSONObject getLngAndLat(String address, String key) {JSONObject positionObj = new JSONObject();try {// 拼接请求高德的urlString url = "http://restapi.amap.com/v3/geocode/geo?address=" + address + "&output=JSON&key=" + key;// 请求高德接口String result = sendHttpGet(url);JSONObject resultJOSN = JSONObject.parseObject(result);System.out.println("高德接口返回原始数据:");System.out.println(resultJOSN);JSONArray geocodesArray = resultJOSN.getJSONArray("geocodes");if (geocodesArray.size() > 0) {String position = geocodesArray.getJSONObject(0).getString("location");String[] lngAndLat = position.split(",");String longitude = lngAndLat[0];String latitude = lngAndLat[1];positionObj.put("longitude", longitude);positionObj.put("latitude", latitude);}geocodesArray.getJSONObject(0).getString("location");} catch (Exception e) {e.printStackTrace();}return positionObj;}/*** 发送Get请求** @param url* @return*/public static String sendHttpGet(String url) {HttpGet httpGet = new HttpGet(url);RequestConfig defaultRequestConfig = RequestConfig.custom().setConnectTimeout(3000).setSocketTimeout(10000).build();CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(defaultRequestConfig).build();String result = "";try {CloseableHttpResponse closeableHttpResponse = httpClient.execute(httpGet);HttpEntity entity = closeableHttpResponse.getEntity();result = EntityUtils.toString(entity, "UTF-8");} catch (IOException e) {e.printStackTrace();}return result;}
}

Java实现根据地址调用高德地图获取经纬度等信息相关推荐

  1. uniapp调用高德地图获取当前位置信息

    1.在utils文件下建立AMap.js文件 export default function MapLoader() {return new Promise((resolve, reject) =&g ...

  2. vue中调用百度地图 获取经纬度

    项目中,需要实现获取当前位置的经纬度,或者搜索某个位置并获取经纬度信息,我使用的的是vue,地图使用的是百度地图. 默认自动获取当前位置经纬度 拖动小红标 获取经纬度 关键词 查询获取经纬度 前期准备 ...

  3. Ptyhon 入门:通过高德地图获取经纬度

    #1.引入包 import json import requests#2.通过高德接口获取经纬度 addr='地址' def gd_map(a):para = {'key': '高德key', # 高 ...

  4. Java 根据高德地图获取经纬度坐标

    1: 申请高德服务key /*** @param addressName* @param cityName* @Description 根据高德地图, 通过地址获取经纬度坐标* @Throws* @R ...

  5. vue 获取用户位置 高德_vue引入高德地图获取经纬度地址

    1.在index.html引入高德地图 //key找个适合例如:160cab8ad6c50752175d76e61ef92c50 2.在webpack.base.conf.js 配置引入 extern ...

  6. uni-app如何使用高德地图获取经纬度

    高德官方文档:准备-入门-教程-地图 JS API v2.0|高德地图API (amap.com) 首先按照链接步骤获取key 两种使用方式.注意:选其一.不可两者同时使用 第一种:loadScrip ...

  7. HBulider调用高德地图获取不到详细位置信息

    一:问题描述,在老版本的Hbuilder中,通过geolocation.getCurrentPosition 可以获取详细地址,但是更新了新版本之后,本方法无法获取详细地址,经过多次查阅资料,终于找到 ...

  8. vue使用高德地图获取经纬度信息

    1.安装Loader npm i @amap/amap-jsapi-loader --save 2.在地图组件 MapContainer.vue 中引入 amap-jsapi-loader <s ...

  9. IOS使用高德地图获取当前位置信息

    如何引用及权限的配置:http://blog.csdn.net/sbt0198/article/details/52728922 在配置完成的前提下,获取当前的位置以及逆编码信息: import UI ...

最新文章

  1. TensorFlow练习18: 根据姓名判断性别
  2. 为什么watch机制不是银弹?
  3. Android onTouchEvent, onClick及onLongClick的调用机制
  4. 指针的理解 -- java程序员学C语言日记二
  5. 不可求的电脑上必备软件,你也许听过
  6. 《软件需求分析》阅读笔记3
  7. Centos 7 mini安装
  8. python与数据思维基础笔记第一章_python学习笔记-第1章节 基础知识
  9. addClass函数
  10. 【Alpha阶段】第五次scrum meeting
  11. 从xgboost, lightgbm 到catboost
  12. cadence xbl封装转AD
  13. 运动员(射击)的成绩可以用脑电技术预测吗?
  14. Appium学习笔记17-手机操作API之分辨率
  15. 微信是怎样炼成的 微信产品的发展历程
  16. JavaScript-快速入门
  17. 统计分析——描述统计之数据水平描述
  18. 解决问题https访问http加载不出图片资源的顺便在给逻辑做个马杀鸡
  19. 腾讯云CVM使用体验
  20. 2019年阿里云服务器CentOS 7.3 64位 搭建VNC远程桌面服务步骤与方法

热门文章

  1. GB50254-2014电气装置安装工程低压电器施工及验收规范
  2. 论文翻译: Adaptive implicit friends identification over heterogeneous network for social recommendation
  3. 怎么用计算机圣诞节快乐,苹果Mac使用技巧:让你的电脑在圣诞节飘起雪花
  4. db2设置默认schema_DB2模式schema
  5. 欧盟儿童玩具EN71查收报告欧盟
  6. ref 引用(vue获取DOM元素)
  7. 来啊,来魔改啊,人生重开模拟器一键托管上线
  8. hue解决下载的excel表格为10万行的限制
  9. 应急部消防救援局职业技能鉴定中心发布调整鉴定报名方式公告
  10. php抓取网页内容实例,php中抓取网页内容的实例详解