Java を使用して Amap API の行政区画照会機能を開発してみる
はじめに:
モバイルインターネットの急速な発展に伴い、地図アプリケーションは人々の生活にとってかけがえのない一部となっています。中国有数の地図アプリケーションの 1 つである Amap は、さまざまな地図関連データを簡単に取得できる豊富な API インターフェイスを提供します。行政区分照会機能により、指定したエリアの詳細な情報を素早く取得できます。この記事では、Javaを使用してAmap APIの行政区画クエリ機能を開発する方法とコード例を紹介します。
<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 を使用して API から返された JSON データを解析し、httpclient を使用して HTTP リクエストを送信します。
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); } } }
上記のコードでは、最初に API キーとクエリ キーワードを指定し、次にクエリ URL を構築します。次に、HttpClient 経由で HTTP リクエストを送信し、返された JSON データを解析します。最後に、クエリ結果から各行政区画の名前、レベル、中心点の座標を取得し、それらを処理または表示できます。
コードを実行すると、次の出力が表示されます。
名称:上海市 级别:province 中心点坐标:121.4737,31.2304 名称:上海市 级别:city 中心点坐标:121.4737,31.2304 名称:黄浦区 级别:district 中心点坐标:121.4846,31.2316 ...
実際の開発では、返されたデータを必要に応じてさらに加工し、行政区分のレベルに応じて分類したり、中心点の座標に基づいてマッピングしたりすることができます。ラベリングなどの操作も可能です。 。さらに、Amap API は、ニーズに応じてさらに開発して呼び出すことができる他の豊富な機能インターフェイスも提供します。
参考資料:
以上がJavaを使ったAmap API開発の行政区画クエリ機能の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。