这里我使用到3种高德地图API:地理/逆地理编码,路线规划,路径规划2.0。其中路线规划使用到驾车路线规划。
后续其他API会做相应地更新,各位小伙伴可以关注一下哦!!!
1. 前期工作准备
1.1.注册高德地图
注册高德地图,并实名认证。
1.2.获取key
获取key的方法如下: 开发 》Web服务 API 》开发指南
2. 在pom.xml引入相关依赖
主要是引入了httpclient,fastjson,lang3,
调用高德的api不需要引入依赖,使用httpclient远程调用即可!
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.13.RELEASE</version>
</parent>
<groupId>cn.cjc</groupId>
<artifactId>springboot-demo</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--httpclient-->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.83</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
</dependencies>
</project>
3. 在application.yml配置参数
server:
port: 8080
http:
maxTotal: 300
defaultMaxPerRoute: 50
connectTimeout: 1000
connectionRequestTimeout: 500
socketTimeout: 5000
staleConnectionCheckEnabled: true
amap:
# 加入在高德地图申请的key
key: f5gfg58jnc00dg9ghahf74hfb5mz93on
api:
# 地理编码api
location-url: https://restapi.amap.com/v3/geocode/geo?parameters
# 逆地理编码api
counter-location-url: https://restapi.amap.com/v3/geocode/regeo?parameters
# 驾车路径规划
driving-route-planning: https://restapi.amap.com/v5/direction/driving?parameters
# 行政区域查询
area-inquiry: https://restapi.amap.com/v3/config/district?parameters
4. HttpClientConfig配置类
以下两种配置类写法任选其一。注意:必须加上@Data注解,否则注入时报空指针异常。
写法一:
package cn.cjc.config;
import lombok.Data;
import org.apache.http.client.HttpClient;
import