Using Java to develop the administrative division query function of Amap API
Introduction:
With the rapid development of the mobile Internet, map applications have become an irreplaceable part of people's lives. As one of the leading map applications in China, Amap provides a rich API interface that can easily obtain various map-related data. The administrative division query function can help us quickly obtain detailed information about a designated area. This article will introduce how to use Java to develop the administrative division query function of the Amap API, and attach a code example.
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.75</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.12</version> </dependency>
Fastjson is used here to parse the JSON data returned by the API, and httpclient is used to send HTTP requests.
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; import java.io.IOException; public class DistrictQuery { public static void main(String[] args) throws IOException { String key = "your-api-key"; String keywords = "上海市"; String url = "https://restapi.amap.com/v3/config/district?keywords=" + keywords + "&key=" + key; HttpClient httpClient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet(url); HttpResponse response = httpClient.execute(httpGet); HttpEntity entity = response.getEntity(); String result = EntityUtils.toString(entity, "UTF-8"); JSONObject jsonObject = JSONObject.parseObject(result); JSONArray districts = jsonObject.getJSONArray("districts"); for (int i = 0; i < districts.size(); i++) { JSONObject district = districts.getJSONObject(i); String name = district.getString("name"); String level = district.getString("level"); String center = district.getString("center"); System.out.println("名称:" + name); System.out.println("级别:" + level); System.out.println("中心点坐标:" + center); } } }
In the above code, we first specify the API Key and query keywords, and then construct the query URL. Next, send the HTTP request through HttpClient and parse the returned JSON data. Finally, we can obtain the name, level and center point coordinates of each administrative division in the query results, and process or display them.
After running the code, you can see the following output:
名称:上海市 级别:province 中心点坐标:121.4737,31.2304 名称:上海市 级别:city 中心点坐标:121.4737,31.2304 名称:黄浦区 级别:district 中心点坐标:121.4846,31.2316 ...
It is worth noting that in actual development, we can further process the returned data as needed, such as classifying according to the level of administrative divisions, or mapping based on center point coordinates Labeling and other operations. In addition, the Amap API also provides other rich functional interfaces, which can be further developed and called according to needs.
References:
The above is the detailed content of Introduction to the administrative division query function of developing Amap API using Java. For more information, please follow other related articles on the PHP Chinese website!