通过经纬度使用高德api获取具体位置
package com.gofun.api.utils; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import com.alibaba.fastjson.JSONObject; import com.gofun.ms.common.util.StringUtils; /** * @Author ZhangYuLong * @Description 通过经纬度使用高德接口获取地址信息 * @Date 2023/7/19 17:17 * @Version 1.0 **/ public class AddressAmapUtil { private static final String GD_URL = "https://restapi.amap.com/v3/geocode/regeo?output=json&location="; private static final String KEY = "6bea1713bc807ff2a805eb5533f65e91"; public static String getAddr(String longitude, String latitude){ if(StringUtils.isBlank(longitude)||StringUtils.isBlank(latitude)){ System.out.println("经纬度不能急为空"); return ""; } String url = GD_URL+longitude+","+latitude+"&key="+KEY+"&radius=1000&extensions=all"; try { URL apiUrl = new URL(url); HttpURLConnection connection = (HttpURLConnection) apiUrl.openConnection(); connection.setRequestMethod("GET"); connection.connect(); int responseCode = connection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); StringBuilder response = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { response.append(line); } reader.close(); JSONObject json = (JSONObject)JSONObject.parse(response.toString()); String status = json.getString("status"); if (status.equals("1")) { JSONObject regeocode = json.getJSONObject("regeocode"); return regeocode.get("formatted_address").toString(); } else { System.out.println("查询失败:" + json.getString("info")); } } else { System.out.println("HTTP请求失败:" + responseCode); } } catch (Exception e) { e.printStackTrace(); } return null; } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)