addressResolution.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. package com.example.demo;
  2. import com.alibaba.fastjson.JSONObject;
  3. import java.util.HashMap;
  4. import java.util.Map;
  5. /**
  6. * @Author Jsxs
  7. * @Date 2023/4/4 20:28
  8. * @PackageName:com.jsxs
  9. * @ClassName: getLineByAdress
  10. * @Description: TODO 地址转经纬度
  11. * @Version 1.0
  12. */
  13. public class addressResolution {
  14. public static Map<String, Object> getURLContent(String address) {
  15. //这里需要使用你的key值⭐
  16. String urlStr = "https://apis.map.qq.com/ws/geocoder/v1/?address=" + address + "&key=HWTBZ-6YFLT-42BXH-VJFWR-YMUZS-T5FBJ";
  17. // 1.这里是JSON字符串-通过哇能工具类获取
  18. String result = TencentMapUtils.getTencentMap(urlStr).toString();
  19. // 2.JSON字符串转JSON对象
  20. JSONObject jsonObject = JSONObject.parseObject(result);
  21. // 3. 强制转换 Object转换为 JSONObject-获取键值是: result的值
  22. JSONObject result1 = (JSONObject)jsonObject.get("result");
  23. // 4.在result的基础上继续获取键值是: location的值
  24. JSONObject location = (JSONObject)result1.get("location");
  25. // 5.在location的基础上获取: 经纬度的值
  26. String lng = location.get("lng")+"";
  27. String lat = location.get("lat")+"";
  28. Map<String, Object> map = new HashMap<>();
  29. map.put("lat", lat);
  30. map.put("lng", lng);
  31. return map;
  32. }
  33. public static void main(String[] args) {
  34. Map<String, Object> map = getURLContent("吉林省长春市净月国家高新技术产业开发区福祉大路1016号长春工业大学人文信息学院");
  35. System.out.println("lat=" + map.get("lat") + ",lng=" + map.get("lng"));
  36. }
  37. }