Maison  >  Article  >  Java  >  Introduction à la fonction de requête de division administrative pour le développement de l'API Amap à l'aide de Java

Introduction à la fonction de requête de division administrative pour le développement de l'API Amap à l'aide de Java

PHPz
PHPzoriginal
2023-07-29 17:38:031764parcourir

Introduction à l'utilisation de Java pour développer la fonction de requête de division administrative de l'API Amap

Introduction :
Avec le développement rapide de l'Internet mobile, les applications cartographiques sont devenues un élément irremplaçable de la vie des gens. En tant que l'une des principales applications cartographiques en Chine, Amap fournit une interface API riche qui permet d'obtenir facilement diverses données cartographiques. La fonction de requête de division administrative peut nous aider à obtenir rapidement des informations détaillées sur une zone désignée. Cet article expliquera comment utiliser Java pour développer la fonction de requête de division administrative de l'API Amap et joindra un exemple de code.

  1. Préparation
    Tout d'abord, nous devons demander un compte développeur de l'API Amap et obtenir la clé API correspondante. Avant d'utiliser l'API Amap, vous devez activer les autorisations de service correspondantes et vous assurer que les autorisations du service de requête de division administrative ont été activées.
  2. Importer des packages de dépendances
    Dans l'environnement de développement Java, nous devons importer les packages de dépendances pertinents pour utiliser l'API Amap. Vous pouvez utiliser des outils de build tels que Maven pour ajouter les dépendances suivantes au projet :
<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 est utilisé ici pour analyser les données JSON renvoyées par l'API, et httpclient est utilisé pour envoyer des requêtes HTTP.

  1. Écrire le code de requête
    Ensuite, nous pouvons écrire le code Java nécessaire pour compléter la requête de division administrative. Voici un exemple simple :
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);
        }
    }
}

Dans le code ci-dessus, nous spécifions d'abord la clé API et les mots-clés de requête, puis construisons l'URL de requête. Ensuite, envoyez la requête HTTP via HttpClient et analysez les données JSON renvoyées. Enfin, nous pouvons obtenir le nom, le niveau et les coordonnées du point central de chaque division administrative dans les résultats de la requête, et les traiter ou les afficher.

  1. Exécutez le code
    Après avoir terminé les étapes ci-dessus, nous pouvons exécuter le code pour obtenir des informations détaillées sur la zone spécifiée. Dans cet exemple, nous obtiendrons les informations sur la division administrative de Shanghai et imprimerons le nom, le niveau et les coordonnées du point central.

Après avoir exécuté le code, vous pouvez voir le résultat suivant :

名称:上海市
级别:province
中心点坐标:121.4737,31.2304
名称:上海市
级别:city
中心点坐标:121.4737,31.2304
名称:黄浦区
级别:district
中心点坐标:121.4846,31.2316
...
  1. Résumé
    Grâce aux étapes ci-dessus, nous avons utilisé avec succès la fonction de requête de division administrative de l'API Amap dans l'environnement de développement Java. Nous avons d’abord préparé les informations de certification requises pour le développement et importé les packages de dépendances pertinents. Ensuite, j'ai écrit du code de requête, utilisé l'API pour envoyer des requêtes HTTP et analysé les données JSON renvoyées. Enfin, nous obtenons les informations détaillées dans les résultats de la requête et les traitons ou les affichons.

Il convient de noter que dans le développement réel, nous pouvons traiter davantage les données renvoyées selon les besoins, par exemple en les classant selon le niveau des divisions administratives ou en effectuant une annotation cartographique basée sur les coordonnées du point central. De plus, l'API Amap fournit également d'autres interfaces fonctionnelles riches, qui peuvent être développées et appelées en fonction des besoins.

Références :

  • Documentation du développeur AMAP : https://lbs.amap.com/api/webservice/summary/
  • Documentation Apache HttpComponents : https://hc.apache.org/httpcomponents-client -ga/tutorial /html/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn